-1

Webページの各リンクでonclick関数をバインドする必要があるため、この関数を使用します

var links = document.getElementsByTagName('a');// total 5 links
for(var key in links){
   //always be true in IE, But just be true from second latest in chrome
   alert(isNaN(parseInt(key)));
   if(isNaN(parseInt(key))){
      break;
   }else{
      ...
   }
}

助けてください、ありがとう

更新:for(リンクのvarキー)の問題のようです。IEの場合、キーはリンクのIDになりますが、クロムの数字にすぎません。

4

2 に答える 2

2

あなたはあなたのアンカータグを超えて他のものを列挙しています、そしてこのもののいくつかはであるはずNaNです。通常のforループを使用します。

for(var i=0; i<links.length; i++) {
    // do something with links[i], 
    // which is guaranteed to be
    // an anchor tag
}
于 2012-06-29T02:46:16.503 に答える
1

jQueryを使用している場合(そして私はあなたがそうすることを強くお勧めします)、$.isNumeric()関数を使用してください。

document.getElementsByTagNameまた、このようなjQueryセレクターに置き換える必要があります

$('a').each(function(index, tag) {
    if($.isNumeric($(tag.attr('SOMEATTRIBUTE'))) {
        // do whatever you want here
    } else {
        // do the other condition here
    }
});
于 2012-06-29T02:46:18.263 に答える