jq点击除了指定元素外其他元素事件的方法
墨初 前端设计 2880阅读
在使用 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>
