我正在尝试解决两种情况:
确定点击链接是否已存在于页面上。
然后,如果该链接已存在,请获取点击重复链接的链接的index()。
我的代码无法正常工作,因为如果点击的链接是重复的,并且它给我一个所有链接总和而不是重复链接的索引,它就无法正确识别。
$("a").click(function() {
Rank = $(this).index('a');
if($("a").attr("href") != $(this).attr("href")) {
alert('\nLink Rank '+Rank+'\n\nYes, this is duplicate link');
return false;
}
else {
alert('\nLink Rank '+Rank+'\n\nNo, this is NOT a duplicate link');
return false;
}
});
答案 0 :(得分:4)
您可以使用属性选择器查找具有相同属性的元素:[href="foo"]
,然后检查length
属性。如果它超过1,则会出现重复的链接:
$("a").click(function (e) {
e.preventDefault();
Rank = $(this).index('a');
if ($("a[href='" + $(this).attr("href") + "']").length > 1) {
alert('\nLink Rank ' + Rank + '\n\nYes, this is duplicate link');
} else {
alert('\nLink Rank ' + Rank + '\n\nNo, this is NOT a duplicate link');
}
});