HTMLで

sample

の様な”target”という名前を付けたタグを用意(複数)して、JavaScriptのDOMでgetElementsByName(“target”)で一括検索しようとしました。

結果は、Safari(Mac)では一括検索できたものの、IE(Win)では要素0件となってしまいました。どうやらIEではgetElementsByNameの検索対象は等の一部のタグだということです。

そのため、divタグをまとめてとってきて name=”target”のものだけ、目的の処理に回るようにしました。これで等価のはず。

var divs = document.getElementsByTagName(“div”);

for(var i=0; i

if(divs[i].getAttribute(“name”) != “target”){

continue;
}
//・・・目的の処理・・・

}

ここでまた1つ、IEでは「if(divs[i].name != “target”){」でよかったのですが、Safariでは「divs[i].name」がundefinedでした。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です