Javascript DOM要素を入れ替える


<ul id="elem">
<li>Kiki</li>
<li>Lala</li>
<li>Popo</li>
<li>Nana</li>
</ul>

Nanaを先頭に移動させる

var elem = document.getElementById("elem");
var elemchild = elem.children;

var m1 = elemchild[3];
var m2 = elemchild[0];
elem.removeChild(m1);
elem.insertBefore(m1, m2);

KikiをNanaの後に移動させる

var m1 = elemchild[0];
var m2 = elemchild[3];
elem.removeChild(m1);
elem.insertBefore(m1, m2.nextSibling);

末尾に追加
elem.appendChild(m1); // or
elem.insertBefore(m1, elem.lastElementChild.nextSibling);
elem.insertBefore(m1, null);

先頭に追加
elem.insertBefore(m1, elem.firstElementChild);

WebSocketをつかうには・・・?

WebSocketで接続するにはどうしたらいいんだろう・・としらべていたらサーバのほうの説明がほとんどでクライアント側のつくりかたをせつめいしているサイトがみつからない・・(-。-;)

そしてようやくわかりやすそうなところをみつけたぁ~

http://qiita.com/ymko/items/555839a6c81051ede2de

Mojo::UserAgent ってモジュールをつかうのかぁ・・
受信や切断されたときのメソッドの作り方もあるしこれならできるかなぁ・・

というわけでためしに情報を受信するスクリプトをつくってみました~(>▽<;; アセアセ
うん~ 受信できているようですね^-^;;
・・が、必要な状況が思い浮かばないのでモジュールへの実装はしばらく行わないとおもいますw
Zaif-WebSocket

ZaifのAPIをつかうモジュールをつくっちゃった^▽^;

2017.01.17 Update
PerlでZaifのAPIをつかうためのモジュールをつくってみちゃいました(〃⌒ー⌒〃)ゞ エヘヘ

というわけでためしにのせてみま~す♪
スクリプトやpodの書き方はいいかげんかもしれませんがご勘弁を(汗


【本体】
 Zaif.pm

【サンプル】
 private_sample.pl  (trade_historyの情報をcsv化)
 public_sample.pl  (取引履歴を出力)


・・バグがあってそんがでても責任はとれません(笑)
続きを読む>>

Perlメモ

文字列か数値かを判別する方法
データをJSON化するのに必要だったので調べてみた^-^;

our $var = '1234';
if ($var ^ $var eq '0'){
  print '数値です';
} else {
  print '文字列です';
}

解説:
同じ変数同士で排他的論理和をとり数値なら「0」、文字列なら文字数分のヌル文字になる。
(上記は数字の「1234」という文字列なので文字列と判定される)
リファレンスが入っているなんてことは考慮しないっ(; ̄ー ̄A アセアセ・・・

テトリスを作ってみた♪

テトリス♪
やや上級者向けのテトリスを作ってみました~♪
難易度とルールの選択ができるようにして、ブロックの回転の仕方を工夫していま~す。

ランキングは決められたレベルへの到達タイムを競うようにしようとかんがいていま~すo(*^▽^*)o~♪

プレイしてみますか~?U ̄ー ̄U ニヤリ

・・たぶんBEGINNERをクリアーするのが精一杯だとおもいま~すw

操作方法(初期設定)
 スタート・メニュー決定: スペース
 左回転: A
 右回転: S
 HOLD:  D
 移動: ← →
 高速落下: ↓
 瞬間落下: ↑

特徴:
 ・2種類のルールを実装
   (ブロックの色と回転の仕方)
 ・壁際で回転させたときの回転補正
   通称「壁蹴り」
 ・ブロック出現前にキーを押しておくことで出現と同時に
   回転・移動・HOLDが可能(先行入力)
 ・超高速モードHURRICANE
   まずクリアーできる人はいないでしょう・・(; ̄ー ̄A アセアセ・・・

政府関係者?

なんでこんなログが残るんだ~?

政府関係者にリトルツインスターズのファンがいるんでしょうかね?^^;
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:49 +0900] "GET /k_diary/sb.cgi?cid=2 HTTP/1.1" 200 16511 "http://search.yahoo.co.jp/search?p=リトルツインスターズ+ペンケース&ei=UTF-8&qrw=0&pstart=1&fr=slv1-tbtop&b=31" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /favicon.ico HTTP/1.1" 200 1150 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/style.css HTTP/1.1" 200 9544 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/thm59_tsm.png HTTP/1.1" 200 16561 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/thm58_74ts.png HTTP/1.1" 200 21033 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/thm57_ts7329b.png HTTP/1.1" 200 22126 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/log/index.rdf HTTP/1.1" 200 27623 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/thm56_ts7329a.png HTTP/1.1" 200 22601 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/img50_s0002.png HTTP/1.1" 200 66035 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/tstcards.png HTTP/1.1" 200 257497 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:50 +0900] "GET /k_diary/img/tstcover.png HTTP/1.1" 200 234994 "-" "Mozilla/4.0 (compatible;)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:51 +0900] "GET /k_diary/template/w-08fw-05.png HTTP/1.1" 200 5354 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:51 +0900] "GET /k_diary/template/title_08f1.jpg HTTP/1.1" 200 43457 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:51 +0900] "GET /k_diary/template/08flw-content1.png HTTP/1.1" 200 5966 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:52 +0900] "GET /k_diary/template/iyo-08flw-10.png HTTP/1.1" 200 1428 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:52 +0900] "GET /k_diary/template/08flw-content41.png HTTP/1.1" 200 9475 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:25:52 +0900] "GET /k_diary/template/icon-08flw1.png HTTP/1.1" 200 635 "http://www.friend-fairy.com/k_diary/sb.cgi?cid=2" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:26:18 +0900] "GET /k_diary/sb.cgi?month=200703 HTTP/1.1" 200 15360 "http://search.yahoo.co.jp/search?p=リトルツインスターズ+ペンケース&ei=UTF-8&qrw=0&pstart=1&fr=slv1-tbtop&b=31" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
secureweb.tokai-sc.jaea.go.jp - - [19/May/2009:15:26:18 +0900] "GET /k_diary/img/thm55_kite.png HTTP/1.1" 200 18942 "-" "Mozilla/4.0 (compatible;)"

http://www.google.co.jp/search?hl=ja&q=tokai-sc.jaea.go.jp&btnG=%E6%A4%9C%E7%B4%A2&lr=
原子力に関係のある施設・・?

ダメなサーバだなこりゃ

メール送信フォームの改良がようやく完成で~すっ♪

いろいろバグが起きたりして大変でした。
なにしろFlash Playerにまでバグのようなものがあるんだから・・(汗

Flashの表示方式を透過ウィンドウにするためのタグ

<PARAM NAME="wmode" VALUE="transparent">

を入れているとなぜか漢字の入力が正しくできないというよくわからない現象が起きました。
仕方ないのでこのタグを外して普通に表示させることにします。

そして、ようやくFlashとCGIが完成してテストしたところ・・
こんどはメールサーバの方が全然ダメダメな状態になってました。
メールの送信が6時間以上も遅れるってどういうことよ?
仕方ないのでとりあえずプロバイダの方のメールサーバを使うことに。

今使っているところは障害が起こったときの対応が全然よくないので別のところに引っ越そうかな・・と思ったけどもう来年の契約までしてしまってるんだよなぁ・・。
どうしよう・・?

追記:ドメインのネームサーバを変えたところ遅延は起こらなくなったみたい。これで大丈夫かな・・?
SPFレコードあたりが関係していたんでしょうかね?(前のネームサーバでは設定できなかった)

何コレ?

サーバのアクセスログから見つけたページ

http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D

何これ? きき☆彡のウェブログに使ってる画像がいっぱい貼られてる・・。

気味悪いので速攻アクセス拒否リストに追加しとこ。
IP: 210.249.184.60
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/seal0009.jpg HTTP/1.0" 200 341923 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/seal0155.jpg HTTP/1.0" 200 546747 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/img11_snap0071.png HTTP/1.0" 200 658359 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/img9_snap0063_0919_2021.png HTTP/1.0" 200 519442 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/img12_snap0102.png HTTP/1.0" 200 659910 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/seal0121.jpg HTTP/1.0" 200 509908 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/img10_snap0070.png HTTP/1.0" 200 693886 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/img62_file.png HTTP/1.0" 200 381020 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:36 +0900] "GET /k_diary/img/seal0131.jpg HTTP/1.0" 200 526086 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:37 +0900] "GET /k_diary/img/img30_snap0159.png HTTP/1.0" 200 1133617 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:44 +0900] "GET /k_diary/img/img9_snap0063_0919_2021.png HTTP/1.0" 200 519442 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
nproxy.vdn.pwd.ne.jp - - [06/Mar/2009:11:47:45 +0900] "GET /k_diary/img/img12_snap0102.png HTTP/1.0" 200 659910 "http://idol.*pa*.info/index.php?feed=%E5%B0%8F%E6%B3%89%E3%81%8D%E3%81%8D" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"


ほかにもいくつかのIPからアクセスしている模様。それらを拒否設定し、さらにRefererでもはじくようにしたところきき☆彡の画像はほとんど表示されなくなりました。とりあえずめでたしめでたし。

【04/04追記】
関係者の人が見ている可能性があるので一部伏せ字にしました。

UTF-8からの変換に対応しないと・・。

以前の更新で別館のページにメールフォームを設置しました~
が、これはふつーにHTMLで作ったものでbotの攻撃を受ける可能性が高い・・
サーバ運営元のサイトにもメールフォームのセキュリティ対策はきちんとするようにというようなことがかかれています。
―ということで今FLASHを使った方式に変えようとしているところです。

ここで問題が・・。

FLASHでは文字コードにUTF-8が使われています。そこでFlashから送られてくるデータをメールで送信するにはUTF-8からISO-2022-JPへのコード変換をやらないといけない訳なんですね~。
ところが、すでに公開されているライブラリには一部の記号や漢字を正しく扱えないものが多いようです。
(ActionScriptでSystem.useCodePage = true を使う方法もあるがこれを使うのはあまりよくないきがします。)

そんなわけで前回に引き続き今回はUTF-8とShift_JIS/ISO-2022-JPのコード変換ライブラリを作ることにしました~。

で、ここで気になる点が出てきました。
Shift_JIS・Unicodeの両方で同じか似た形の記号や漢字が違うコードで登録されているんですね~。(Unicodeは記号のみ)
あと「\」や「~」といった記号の変換も問題アリ・・。

というわけで変換ルールを1パターンだけにしてしまうと別のルールで変換された文字は正しく扱えなくなってしまいます。

そこできき☆彡は複数の変換表を組み合わせたものを使うことにしました~。
使った変換表は
 ・CP932.txt
 ・http://hp.vector.co.jp/authors/VA010341/unicode/
   で公開されている変換表
 ・JIS0201.txt JIS0208.txt
です。(1つめと3つめはUnicodeコンソーシアムのもの)

これらを統合させて新たな変換表を作り出しました~。
基本的にはCP932を用い、補助変換ルールとしてほかのものをとり入れています。

これを基に変換スクリプトを作成~
さらにIBM拡張文字や半角カタカナの変換機能をつけて・・

 ようやく完・成~!

 ふぅ、2週間くらいかかっちゃった(^-^;

近いうちにサイトで公開しておきま~すっ☆

さて、新メッセージフォーム完成まであと一息だ~
続きを読む>>

Shift_JIS ←→ ISO-2022-JP 変換スクリプト

今、きき☆彡はウェブサイトをいろいろ変更しているところです。
その中でいまやっているのがメッセージ送信のページ&CGI変更です。
そこでMIMEエンコードというのが必要になってきたのですが公開されているものには満足のいくものがない・・・
ということで自分で作っちゃいました♪
ついでにコード変換機能もつけています(^-^;

ソースを見たい人は続きをどうぞ~♪

【02/26追記】
 プログラムにいくつか間違いがあってiso→Shift_JISの変換すべてとShift_JISでコードE040以降の文字が正しく変換されませんでした(汗
修正しておきます~(>_<) (赤字のところ)
あぁ・・やはりちゃんとチェックをしておかないとだめですなぁ・・;
続きを読む>>

トップページへ