m2

2007-03-01から1ヶ月間の記事一覧

グローバルオブジェクトの参照はも function 宣言時に決まる

以前「window オブジェクトを汚さないネタ」で疑問に思ったので検証しました。 parent.html <html><head><title>Window テスト(Parent)</title> <script type="text/javascript"> window.name='parent'; function hello(){ alert('hello:'+window.name); } function openChild(){ var w=open('…</head></html>

子ウィンドウに親ウィンドウの CSS を継承させる

普通に考えればこんな感じ。 // 子ウィンドウを作成 var w=window.open('about:blank','hoge','width=800,height=600,location=yes'); var d=w.document; d.write('<html><head><title>'+document.title+' の子ウィンドウ<\/title><\/head>'); d.write('<body>'); /* (略) */ d.write('</body></head></html>…

style 要素を動的に生成する

普通に考えればこんな感じ。 var style=document.createElement('style'); style.setAttribute('type', 'text\/css'); style.innerHTML='…'; document.getElementsByTagName('head')[0].appendChild(style); が、IE6 では style 要素の innerHTML プロパティ…

伸縮するメニュー

css

元ネタ javascriptで伸縮するメニューができる http://loconet.web2.jp/blog/archives/2007/03/javascript.html 似たようなことが CSS だけでできそうだと思って書いてみました(アニメーションはしません)。 .menu { width: 500px; } .menu th { width: auto…

Adobe Apollo で Hello World

Adobe から widget っぽいのが出たので試してみました。画像が多いので「続きを読む」にしときます。

window オブジェクトを汚さないネタ

user.js や bookmarklet を書く時は、元のページのグローバル関数や変数を上書きしないようにグローバルな領域を使わないようにするんですが、JSONP のような外部スクリプトと連携する場合はどうしても必要になります。それをどうにかして元のページの windo…

今後もドラッグ&ドロップを書かない人のために

ライブラリにしました。 dndsupport.jsデモ 前回のプログラムと違うポイントとして、 他のライブラリに依存しない safari も img を被せるようにした(効果があるかは不明) Opera8対応(古いシイラも同じ対策でいけるかも) なるべく軽量に ドラッグする要素と…

頻繁にDOM要素の内容を変える場合はレイアウトが変わらないように注意する(IE)

先日の「これからドラッグ〜」を家の低スペックマシンの IE6 で動かすと非常に重たかったので調査したところ、ドラッグ&ドロップ部分は全く関係なくて、ログ表示部分に問題があることがわかりました。 log: function(msg,e) { /* コメントアウトすると軽く…

3/6のエントリ

主な目的は Opera のプロモーションだったりする。

やっちまったコード2

マウスカーソル弄っててハマったとこ。 var onNorth = false; var onSouth = false; var onEast = false; var onWest = false; var direction = onNorth ? 'n' : '' + onSouth ? 's' : '' + onWest ? 'w' : '' + onEast ? 'e' : '' ; alert(direction); // ??…

これからドラッグ&ドロップを書く人のために

2012/07/22 追記 久しぶりに確認したところ、IE9 では以下で指摘している IE (このときは IE6 でした) の問題(3, 4, 6)がすべて解消されていました。 また、Firefox での問題(5)も Firefox14 で試したらは解消されていました(ただ、All-in-One Sidebar のパ…