javascript - JQuery - 检测哪个 div 框被单击

标签 javascript jquery html

我正在尝试检测使用 JQuery 单击了哪个 div 框,但我不确定我做错了什么。我知道如果单击 div 框,我可以通过直接调用函数来以不同的方法来解决此问题,但我希望通过首先确定单击的内容来实现此目的。

$(document).ready(function() {
    $(document).click(function(event){
        var id = event.target.id; //looks for the id of what was clicked
        if (id != "myDivBox"){
            callAFunction();
        } else {
            callSomeOtherFunction();
        }
    });
});

谢谢您的建议!

最佳答案

您可以使用closest函数获取带有标签div的第一个祖先元素,请参阅以下示例:

$(document).ready(function() {
    $(document).click(function(event){
      var parentDiv = $(event.target).closest("div");
      console.log(parentDiv.prop("id"));
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
  <span id="span1">Test1</span>
</div>
<div id="div2">
  <span id="span2">Test2</span>
</div>

希望对你有帮助。再见。

关于javascript - JQuery - 检测哪个 div 框被单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42938415/

相关文章:

javascript - HighCharts 面积图 - 仅在标记悬停时显示工具提示

javascript - 在顶部显示受 CSS3 动画影响的 div

html - 带有输入字段的 CSS 网格 : alignment question

html - 响应表,聪明的方式

javascript - 使用 native JavaScript 在转换中获取 CSS 值

javascript - 通过比较两个数组来基于索引映射键

jquery - 使用asp.net mvc和jquery时在哪里形成html?

jquery - 查找可点击的元素

javascript - 根据 div 的某些值填充 div

javascript - 让 XMLHttpRequest 在 Windows Phone HTML5 应用程序上工作