【发布时间】:2014-02-26 18:17:03
【问题描述】:
我确实有一个工作代码(使用 :contains),但我无法使用 .contains() 使其工作,我想问一下为什么。 HTML:
<div id="quiz_score_percent">Your score: <em class="placeholder">100</em> %</div>
<div id="quiz_summary">
<p>quiz feedback</p>
JS(工作,不需要改变):
$(document).ready(function () {
if ($("#quiz_score_percent").has(":contains('100')").length) {
console.log("test");
$("#quiz_summary").append("<p>test text</p>");
}
});
但是.contains():
if ($("#quiz_score_percent").contains('100')){/* execute */}
它抛出:
Uncaught TypeError: Object [object Object] has no method 'contains'
JS 在这里摆弄: JS fiddle code
为什么 .contains() 不起作用? 接受的solution here 对我不起作用...
【问题讨论】:
-
因为jQuery中没有
contains()方法。也许您使用的插件提供了一个插件,但没有开箱即用的插件。 -
所以我完全误解了这一点? --> api.jquery.com/jquery.contains
-
是的,这不是一回事,并且不会复制
:contains()选择器的功能(它处理元素关系,而不是内容)。