繁体   English   中英

原型:选择包含文本的元素(如jQuery:contains())

[英]Prototype: select element containing text (as jQuery :contains())

使用原型,我必须选择并隐藏其中包含单词Foo所有<li>元素:

<li><label>Lorem Lipsum Foo</label></li>
<li><label>Lorem Lipsum Bar</label></li>

我知道使用jQuery就像$('li:contains("Foo")').hide()一样容易,但是找不到在Prototype中做到这一点的方法。

var lis = document.getElementsByTagName("li");
[].forEach.call(lis, function (li) {
  if (li.textContent.indexOf("Foo") > -1) {
    li.style.display = "none";
  }
});

认真地说,您不需要为此的库。 只需DOM4和ES5的一大部分即可为您完成。

如果您关心旧版平台支持,请使用常规垫片

SideNote:永远不要把$("li:contains('Foo')")变得极慢。 更不用说滥用选择器了4

:contains确实可以在Prototype中工作,您只需要记住$$的输出是一个数组。

$$('li:contains("Foo")').invoke('hide');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM