猛暑を乗り切った服・小物・その他 とにかく2025年の夏は暑かった。 と、毎年言っている気がするけど、今年は特別暑かったのではないか。これが地球温暖化なのだと見せつけられているような気がする。スノーボーダーとしてはそれに全力で抗う必要があるんだけど、自分の態度がまだ追いついていない。 生…

今まで var element = document.createElement('style'); document.getElementsByTagName('head')[0].appendChild(element); if (ie) { var sheet = element.styleSheet; } else { var sheet = element.sheet; } みたいにやっていた。 ところが dojo のソースを眺めていたら IE には createStyleSheet という関数があるみたい。 createStyleSheet を使うとこうなる。 if (ie) { var sheet = document.createStyleSheet(); } else { var element = document.createElement('style'); doc
このエントリは一部間違っています。 こちらで訂正いたしました。 http://d.hatena.ne.jp/amachang/20070523/1179928332 いや大したことじゃないんですけど かなりハマったのでメモしときます。 通常ページのタイトルは以下で取れる var title = document.title; alert(title); // タイトルを表示 しかし、コンテンツ内に <div id="title"></div> のように id が title のものがあると var title = document.title; alert(title); // [object HTMLDivElement] となってしまう。 これでかなりはまった まとめ 不特定のページから title を取るような場合は多少めんどくさいけど document.getElementsByT
ブラウザ上でのプログラミングで避けては通れないのがイベント処理。その仕組みは DOM Level 2 Events にて規定されています。しかし、とりあえず addEventListener メソッドを使ってはいるものの、それがどのような意味を持つか詳しくは知らないといったことはありませんか。そこでここでは、DOM 2 Events のイベントモデルを理解し、ブラウザが裏で何をしているのかを把握するために、実際にそのイベントモデルを実装してみることにします。具体的には、仕様書に定められたインターフェースを JavaScript で実装し、それらを組み合わせてイベントの発生をシミュレートしてみます。 Event インターフェース EventListener インターフェース EventTarget インターフェース DocumentEvent インターフェース DOMException イン
無名の遺跡15 建物が解体された土地を訪れると、時々、塀やコンクリートの基礎などが撤去されずに放置されているのを見かける。 このような過去の痕跡が残されている空き地を、本ブログでは"無名の遺跡"と呼んでいる。 無名の遺跡が生み出される原因の多くは、解体や撤去費用を抑え…
http://d.hatena.ne.jp/brazil/20061105/1162722198 http://rails.office.drecom.jp/takiuchi/archive/100 の中で記述されているscript要素にinnerHTML突っ込んでもうまく作動しない件。僕のIE6でもできないのでMSの月例更新で仕様変更になったのかと勝手に想像しています。ただその代替手段として...以下のようにtextプロパティを利用できます。既存のscript要素にtext設定しただけでalertされます。…これってXMLHttpRequestした後にeval必要ないですね。 <script id="foo"></script> <script> foo.text = "alert(1)"; foo.text = "alert(2)"; </script>innerHTMLはMSIEの独
DOM の getAttribute / setAttribute メソッドは DOM Level 1 から定義されているメソッドで、MSDN Library によれば IE はバージョン 4 からサポートしています。しかし、IE での element.getAttribute(name) / element.setAttribute(name, value) というのは、基本的には JavaScript における element[name] / element[name] = value のシンタックスシュガーでしかありません。ですから、element.setAttribute("innerHTML", "foo") とすると、element の属性には何の変化もないが element の内容が書き換えられるという事態になります。 この (手抜き) 実装が原因で、getAttribute
次のHTML文書の断片をDOM APIを利用して生成してみます: <div class="container" id="foo"> <h2>だいあろぐ</h2> <label> <input type="button" onclick="alert(true)" /> </label> </div> 実際にやってみると次のようになります(一例)。 var div = document.createElement('DIV'); var h2 = document.createElement('H2'); h2.appendChild(document.createTextNode('だいあろぐ')); div.appendChild(h2); var label = document.createElement('LABEL'); var input = docu
2006年09月28日02:00 カテゴリLightweight Languages javascript - DOMMakerで楽々DHTML DHTMLは便利なものだが、DOM関連の関数でHTMLを「描く」のは、あまりに面倒だ。 たかだか <a target="blank" href="http://blog.livedoor.jp/dankogai">404 Blog Not Found</a> とやるのに、 var a = document.createElement('a'); a.setAttribute('target', 'blank'); a.setAttribute('href', 'http://blog.livedoor.jp/dankogai'); a.appendChild(document.createTextNode('404 Blog Not Found'
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く