ボタンなどの Web ページ要素を含む変数を使用しています。ただし、要素を保存した瞬間から要素を含むページが変更されているため、「デッドオブジェクトにアクセスできません」というエラーが表示されることがあります。
要素が死んでいるかどうかを確認する方法を知りたいのですが、試してみました:
if(element)
alert("Do something");
しかし、期待どおりに機能しません。
ボタンなどの Web ページ要素を含む変数を使用しています。ただし、要素を保存した瞬間から要素を含むページが変更されているため、「デッドオブジェクトにアクセスできません」というエラーが表示されることがあります。
要素が死んでいるかどうかを確認する方法を知りたいのですが、試してみました:
if(element)
alert("Do something");
しかし、期待どおりに機能しません。
要素が可視DOMに存在するかどうかを確認する方法は?
var elementInDocument = function(element) {
while (element = element.parentNode) {
if (element == document) {
return true;
}
}
return false;
}
次のように使用できます。
if(elementInDocument(element))
alert("Do something");
//eval it in your mozilla-browser space
var dc = content.document;
content.document.location.reload();
setTimeout(function(){
try{
dc.parentNode;
}catch(e){
if (e.message.indexOf(' dead ')!=-1){
alert('REALY DEAD!');
}
} }, 1000);
これは、私の moz 拡張プロジェクトのデッド (try..catch ブロック内) のテストです。