javascript

メソッドに動的にアクセスしたい

引き続きオワタcheckboxネタで、みかぽんからQAが出たネタを。 if文でメソッドをハンドリングしたい時なんかに使う手だが、変数に入っている文字列値をメソッドとしてコールしたい場合、phpなんかだと $method=($state)?"print":"store"; $this->$method; /*…

どこでもXPath

XPathつーのはXML文書のノードを指定する為に使うものなんだが、当然XHTMLでも使う事ができる。ていうかValidじゃないHTMLでもなんとかしてくれる。XMLがどーの、とかいうと小難しい感じがするが、結構単純なのでちょっと覚えておくとハッピーな感じ。自分が…

IEのappndChildは鬼門

こんなコードを書く window.onload=function(){ div=document.createElement('div'); /* とりあえずdivつくる */ document.body.appendChild( div ); /* bodyに追加 */ p=document.createElement('p'); /* pタグ作って */ p.appendChild ( document.createTe…

IEでやっちゃいけないDOM操作

自分用メモ

エレメント内の子要素を探してくるメソッ

prototype.jsのお勉強がてら、エレメント内の子要素から条件にあったものを探してくるメソッドを書いてみた。欲しけりゃ持ってけ( ・∀・)!書いてから気が付いたがElementのprototypeメソッドに$tって名前はなかろう。と思った。 /** * $t(tag,obj) * エレメ…

非同期アップロード

結局iframeとjavascriptで解決。Ajax使う必要は無かった。 iframe内にフォームとinput type=fileのセットを置く input type=fileのonchangeが走ったらsubmitしちゃう アップロードされたファイルのmime-type調べてテンポラリから公開できる場所に移動 そのUR…

非同期ファイルアップロード(not ajax)の検討

先の件をとりあえず解決法。 input type="file"がコピーできねぇならフォームのターゲットとアクションを差し替えちゃえ! 終わったら元のactionに戻す(イベントドリブンだから2つ走ったらぐちゃぐちゃになる気はする) name="hoge"を本当のPOST先につっこみ…

強敵Firefox

input type="file"のonchangeでファイルを勝手にアップロードしてプレビューをひっぱってくる仕掛けを作ろうとしてたんだが・・・ <form action="登録するとこ"> <input type="file" name="hoge" id="hoge"> </form> ... <form action="あっぷろーだ"> <input type="file" name="piyo" id="piyo"> </form> ... <script じゃばすくりぷと> Event.observe('hoge','change',function( evt ){ $('piyo…