javascript - 如何限制应用于 <body> 的单击事件在正文中的 jquery 数据表上执行

标签 javascript jquery html

我有动画数据表,当它们的超链接被点击时,它们会从左边滑入。当用户阅读完可见数据表的内容后,我应用了以下代码以允许用户单击其他任何地方以将表停放并继续查看。我使用 jQuery 代码来附加点击事件...

<script type="text/javascript" charset="utf-8">
    $(document).ready( function () {$('.dtable').dataTable( {"sDom": 'rt',"sScrollY":"200px", "bPaginate":false, "bFilter":false} );**$('body').click(function() {parkDataTables();});})
</script>

不幸的是,单击数据表本身会将其停放。我不想要这种行为。也许有人知道如何阻止此点击事件在数据表表面触发...

非常感谢

丹尼斯

最佳答案

您可以使用 body 作为选择器,而不是使用

$('body').children().not('.dtable')

所以你会得到

<script type="text/javascript" charset="utf-8">
$(document).ready( 
  function () {
   $('.dtable').dataTable( {"sDom": 'rt',"sScrollY":"200px", "bPaginate":false, "bFilter":false} );
$('body').children().not('.dtable').click(function() {
  parkDataTables();
 });})
</script>

关于javascript - 如何限制应用于 <body> 的单击事件在正文中的 jquery 数据表上执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8946805/

相关文章:

javascript - 迭代对象和数组 javascript/Angular

javascript - 在不同的方法中再次使用 componentDidMount 的 fetch 方法

javascript - 无法更新 "data-attribute"值

javascript - 如何获取标签值/文本(如innerHTML)?

c# - ASP.Net:如何打开第二个窗口并在主窗口中写一些东西?

javascript - $.each 语句在达到 "undefined"值时停止

javascript - 在函数外部使用 jquery 变量

触发 CSS3 过渡的 JavaScript 函数不起作用

javascript - 将变量添加到 d3/javascript 对象工具提示的 href 链接

javascript - 在另一个对象 JavaScript 中搜索多个对象值