IE7のJSに問題があります。私は、特定のオブジェクトにclassName(DOMのHTMLElementオブジェクト)が割り当てられているかどうかを調べるためにテストを行っています。Internet Explorer 7 - Javascript 'undefined'がテストされていません
さて、Firefoxでページをテストすると、はい、変数が定義されていないと言われます(すべての私のテストは、以下の警告を行う()。IEでは
は、テストのいずれも通過していない、変数は、上で割り当てられますIF文、および最後の警告時の最後の()IEはfn_note.className
声明に基づいて、エラー「classNameがnullまたはオブジェクトではありませんである」チャックここ
コードです:。
var fn_note;
var kids = area.childNodes;
for (var l = 0; l < kids.length; l++){
//DEBUG check if the found var exists
if (kids[l].className == null){
//then the className var doens't exist
alert ('the classsname for the following var is null: --'+kids[l]+'--');
}
if (kids[l].className == undefined){
//then the className var doens't exist
alert ('the classsname for the following var is undefined: --'+kids[l]+'--');
}
if (kids[l].className == ''){
//then the className var doens't exist
alert ('the classsname for the following var is an empty string: --'+kids[l]+'--');
}
if (typeof kids[l].className === 'undefined'){
//then the className var doens't exist
alert ('the classsname for the following var is NEW TYPEOF TEST: --'+kids[l]+'--');
}
if (kids[l].className == 'fn-note') { /* (/fn-note$/).test(kids[l].className) IE doesn't really like regex. por supuesto */
//we have found the div we want to hide
fn_note = kids[l];
}
}
alert('the clicked on className is '+area.className+'name of the found div is '+fn_note.className);
私に知らせてください私が間違ってやっていること基本的なことだけど、それはATMだとは思えない。
ありがとうございます。
IE7でテスト済みです:http://jsbin.com/azoya/空文字列を報告します。 – strager
またここで空の文字列をテストしました – eglasius