Jquery 查找添加了伪属性的元素

Jquery 查找添加了伪属性的元素,jquery,attributes,find,Jquery,Attributes,Find,我为页面上的所有元素添加了一个伪属性,例如myId=100,每个元素都有一个不同的伪id。 现在我需要根据假id找到一个元素,这可能吗? 我试过了 $("#myFrame").contents().find('a').each(function () { if ($(this).attr['myid'] === 100) { $(this).hide(); } }); 有更好的主意吗? 谢谢你$(这个)。attr['myid']应该是$(这个)。attr

我为页面上的所有元素添加了一个伪属性,例如
myId=100
,每个元素都有一个不同的伪id。
现在我需要根据假id找到一个元素,这可能吗?
我试过了

$("#myFrame").contents().find('a').each(function () {
    if ($(this).attr['myid'] === 100) {
        $(this).hide();
    }
});    
有更好的主意吗?
谢谢你

$(这个)。attr['myid']
应该是
$(这个)。attr('myid')
attr
是一个函数)

您还可以使用:



您应该避免向HTML元素添加自定义属性。如果您解释了这个问题,我们可能会建议一个更好的方法。

使用HTML5方法,而不是添加自定义属性:

<span data-id="blahblah">Foo</span>


alert($(this).data("id")); // blahblah
Foo
警报($(this).data(“id”);//布拉布拉赫

不管你的问题是什么,我都不相信这是最好的解决方案。你的假身份证会被编译吗?类真的很糟糕吗?我对脚本中分配给所有一个假id的部分很感兴趣。你能在编辑中发布它吗?@roXon抱歉,我不能给你,因为我没有它,我只有在添加假id后才有网站。如果我想.each()遍历所有DOM元素(不仅仅是a)我该怎么做?如果您只想对具有特定ID的元素执行某些操作,那么只需省略
a
$(“#myFrame”).contents().find(“[myId=”100“])
。否则使用
*
而不是
a
$(“#myFrame”).contents().find('*')
。但在每个元素上循环需要时间。你想干什么?
<span data-id="blahblah">Foo</span>


alert($(this).data("id")); // blahblah