私はポップアップdivを作るJavaScriptコードを少し持っています。それは私がそれを期待した方法とまったく同じです。しかし、IEで試してみましたが、うまくいきません(驚きました!)。私は、IEに開発者コンソールがあり、JavaScriptのブレークポイントが可能であることを(衝撃的に)発見しました。だから、私は私のコードを経て、そしてIEは以下のコードでは4行目にエラーが発生したことが判明:DOM値プロパティはIEではサポートされていませんか?
function makePopUp() {
div = document.getElementById("shell");
if(!div) {
email = document.getElementById("email").value; //HERE IS THE ERROR!
popupshell = document.createElement("div");
popupinner = document.createElement("div");
popupshell.id = "shell";
popupinner.id = "inner";
popupinner.innerHTML = "A crazy long string (HTML of the popup)"
popupshell.appendChild(popupinner);
document.body.appendChild(popupshell);
}
else { //This just blinks the popup window if it already exists.
blink(div);
t = setTimeout("blink(div);",100);
t = setTimeout("blink(div);",200);
t = setTimeout("blink(div);",300);
t = setTimeout("blink(div);",400);
t = setTimeout("blink(div);",500);
}
}
IEは、「オブジェクトはこのプロパティまたはメソッドをサポートしていません」私にエラーを与えます。私はそれがid "email"で持っている入力タグのvalueプロパティを参照していると仮定します。このプロパティはDOM 1 & 2です。IEはそれを解釈できるはずです。誰かがこの問題に対する回避策を持っているのですか、実際にはエラーに値するコードで、私はばかだと思いますか?
サイドノート: 'setTimeout'に文字列を渡さず、関数を渡します。 'setTimeout(function(){blink(div);}、100);' –
'電子メールとは何ですか? div、入力フィールド、テキストエリア? –