在使用 jquery 的点击事件时,如果在指定的某个元素之外的其它元素上都可以触发,而指定的元素则不需要挂载这个事件该如何做呢?

jq点击除了指定元素外其他元素事件的方法

参考代码:

示例1:

判断触发事件元素的 ID 属性的值来决定要不要触发事件,如果不为指定元素的 ID 值,则触发事件,反之亦然!

$('body').on('click',function (e) {
    if (($(e.target).attr('id') != 'mochu')) {
        console.log('除了 id 为 mochu 以外的所有元素都可以输出此段文字!');
    }
});

示例2:

同上面的示例差不多,只是判断触发元素的 class 属性值

$('body').on('click',function (e) {
    if (($(e.target).attr('class') != 'mochu')) {
        console.log('除了 class 为 mochu 以外的所有元素都可以输出此段文字!');
    }
});

完整的示例代码:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
  <title>测试点击事件</title>
  <style>
    #div1 { border: 1px solid #ccc; width: 100px; height: 100px; }
    </style>
    <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script>
</head>
<body>
 <div id="div1">点击我不会触发事件!</div>
    <div>点击除 id 的值为 div1 的元素外的其它元素都可以触发事件!</div>
    <script>
        $('body').on('click',function (e) {
            if (($(e.target).attr('id') != 'div1')) {
                console.log('我是提示!');
            }
        });
    </script>
</body>
</html>