gpt4 book ai didi

javascript - 有没有办法在 HTML 中搜索以某个字符串开头的属性

转载 作者:太空狗 更新时间:2023-10-29 13:52:17 24 4
gpt4 key购买 nike

有没有办法找到所有具有以特定字符串开头的属性的元素?

我正在使用 Mootools 框架,这是我尝试过的:

$$('*[data-media-*]');

但它只是输出页面中的所有元素。

那么有没有办法获取页面中所有具有以 data-media- 开头的属性的元素?

最佳答案

您可以通过遍历容器中每个元素的属性并查看属性名称是否与您要查找的内容的正则表达式相匹配来近似类似这样的内容:

例如,in this jsFiddle, I am looking for li elements with the data-media-tv and data-media-dvd properties .

您可以定制正则表达式以仅返回您想要查看的内容。只想查看具有 data-media-* 的元素(如您的问题)? Here you go .


请记住,这不是完全可扩展的。因为我们遍历页面上的每个元素,并检查每个属性(但如果找到则提前返回),这对于大页面来说可能而且可能会很慢。

将此限制为仅您要搜索的容器,或仅您要遍历的元素!如果你对 document.body 运行它,它会遍历页面中的每个元素,如果你的房子因此被烧毁,我将不承担任何责任。 :)


这里是函数化的:

function attrMatch(elements, regexp) {
// Iterate through all passed-in elements, return matches
var matches = elements.filter(function(li) {
var numAttr = li.attributes.length;
for(x=0;x<numAttr;x++) {
var attr = li.attributes[x];
return attr['name'].test(regexp);
}
});

return matches;
};

elements中,只传入要检查的元素,可能通过$$选择。如果要检查容器元素中的所有元素,请在 的每个实例中将 elements 替换为 containercontainer.getChildren()元素,上面。

关于javascript - 有没有办法在 HTML 中搜索以某个字符串开头的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12471303/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com