javascript - .find 和 .contents 不工作

标签 javascript jquery html

我有一个条件,如果我的 parent div 有类(class) .ads 的 child ,那么它应该 alert('true') 否则 警报('假')。但是我的函数在这两种情况下都返回 true。这是 jsFiddle 链接 http://jsfiddle.net/F3EXf/

<head>
    <script type="text/javascript" src="jquery-1.7.2.js"></script>
    <script type="text/javascript">
        $(function(){
            if($('#me').find('.ads')){
                alert('true')
            } else {
                alert('false')
            }
        });
    </script>
</head>
<body>
    <div id="me">
        <div class="noads">aaaa</div>
    </div>
</body>

嗨维加请看下面的截图

enter image description here

最佳答案

要检查元素是否存在,请改用

if ($('#me').find('.ads').length) {
   ...
}

因为 $('#me').find('.ads') 将始终返回 true(它返回一个 jQuery 包装的空对象,评估为一个 true 值)即使目标元素通过 find() 不存在

关于javascript - .find 和 .contents 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12281752/

相关文章:

javascript - 如何通过javascript添加<span>?

javascript - 无法通过 AJAX 将数组发送到 php?

javascript - 在同一行的 SharePoint 页面内显示多个 Div

html - 如何获取跨浏览器表单 `fieldset` 内容高度百分比(带图例)

javascript - 跨域存储值(value)

javascript - Jquery 找到一个类型的第一个直接 child

jquery - 如何扩展 jScrollPane 的悬停事件?

html - 使用隐藏的输入字段传递多个值

javascript - 使用 JavaScript 显示绘图线

javascript - 使用 APIWrapper.js 初始化 SCORM 始终返回 false