tmp

IE5で動くjQueryっぽいライブラリができていました

半分ぐらいjQueryからコードを持って来たような気がしますが、IE5でもjQueryっぽく書けるライブラリができていました。正直、あんまりブラウザのチェックとかしていないので、実際に使うのは結構危険です。 http://code.0fk.org/$/ とりあえず、イベントとア…

セレクターをちょっとだけ作り直した

http://kquery.if.land.to/slickspeed/ http://kquery.if.land.to/slickspeed/system/kquery.js 精度が改善しました。速度はちょっと遅くなったかもしれません。今までは$.findでDOMElementの配列を返した物で計っていましたが、それは改めてK(selector)でjQ…

半透明PNGとopacityでIEではまった

半透明PNGが背景に設定されている要素をフェードインさせようと思ったが、IEだと半透明部分が黒くなるので、ちょっと試した。 http://kquery.if.land.to/test/png/ 一つ目はdivに背景とopacity(IEにはfilter)を設定した。IE7だと半透明部分が黒くなる。 二…

(IE5で)最速セレクターを作ってみた

cssQueryが非常に遅いので作ってみた。まぁ、古いから仕方ない。 http://kquery.if.land.to/code/selector.html http://kquery.if.land.to/slickspeed/ 上のslickspeedは、広告が自動挿入されるサイトにおいてあるため、実行すると結果が狂う可能性がありま…

IE5でencodeURIするために、replaceの第二引数に関数を持ってこれるようにした

http://kquery.if.land.to/code/js/patch.js ここにencodeURIはあったので、第二引数を持てるようなString#replaceを作った。まぁ、原案自体はここで取り上げられていたものだから、これでlastIndexが使えないことを考えて、ちょっとだけ動くようにしただけ…

スタイル読み取り用の関数を作った

動作確認用 jQueryと違うのはgetComputedStyleとcurrentStyleの分岐が関数の外側にあることぐらいです。さぁ、セレクターを本格的に作る前に、依存関係の無いスタティックな関数から作っていこうか。

Function.prototype.applyとかArray.prototype.spliceのIE5用のコード

applyはObject以外のものをthisにしようとする場合、x.__applyに代入できないので、constructorからprototypeを辿って、そこに入れる感じ。Array関連はcall等を一切使わず、forだけで処理するように作りました。あと、全体をfunctionで囲んだ無名関数の実行…

属性読み取り関数を作った

IE5だと、in演算子、replaceの第2引数に関数が取れないことがわかった。あと、IEはマジでgetAttributeとかがシンタックスシュガーなので、キャメルケース変換が必要なのこともわかった。 書いたコード

UserAgentを使わないブラウザ判定を作った

これ。例のIE5+も動くjQuery用。winieとmacieとunknownを追加した。昼間載せたバージョンはIE5だと動作しなかった。IE5ではObjectの添え字は文字列だけのようだ。switchを使った実装に変えて回避。チェックはあまり終わっていない。 チェックしたブラウザ Wi…