只有当span包含特定文本时,我才需要启用div,但是无论我将什么放在“包含”括号中,div都会被启用。甚至是胡言乱语。在我页面的头部,我引用了google的jquery
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>然后在结束body标记之前运行我的脚本
<script>
if($("span:contains('abc123')")){
document.getElementById("mydiv").style.display = "block";
}
</script>我做错了什么?非常感谢您的帮助!!
发布于 2012-12-13 13:13:30
我会做下面这样的事情:
<script>
if($("span:contains('abc123')").length > 0){
$("#mydiv").css("display","block")
}
</script>发布于 2012-12-13 13:09:38
您必须检查该元素是否实际存在。选择器总是会返回一个真值。length属性将告诉您集合中有多少个元素:
if( $("span:contains('abc123')").length ) {
//^^ elements exist
}发布于 2012-12-13 13:13:54
是的,我相信这个问题已经得到了回答,但只是补充一下:
if( $("span:contains('abc123')").length ) {
$("#mydiv").show();
}我认为这样做效果更好,因为页面上已经有了jQuery。
https://stackoverflow.com/questions/13853339
复制相似问题