Javascript findout js代码遍历DOM中的哪个元素

Javascript findout js代码遍历DOM中的哪个元素,javascript,jquery,dom,Javascript,Jquery,Dom,对于dom操作,我们编写如下代码。 对于dom操作,我们必须首先遍历dom元素。 我想知道如何确定我们编写的代码是遍历DOM中的哪个元素 如下面的示例代码所示 $(document).on('click', '.block_docmanage', function (event) { cl1ele = $(this).closest('.panel.panel-default.level1').find('.panel-headinglevel1 > h4 >

对于dom操作,我们编写如下代码。 对于dom操作,我们必须首先遍历dom元素。 我想知道如何确定我们编写的代码是遍历DOM中的哪个元素

如下面的示例代码所示

$(document).on('click', '.block_docmanage', function (event)
{           
  cl1ele = $(this).closest('.panel.panel-default.level1').find('.panel-headinglevel1 > h4 > .docmgCategoryBlock');
}):

为什么不在单击时使用元素的id发出警报

     $(document).on('click', '.block_docmanage', function (event){
       cl1ele = $(this).closest('.panel.panel-default.level1').find('.panel-headinglevel1 > h4 > .docmgCategoryBlock').attr("id");
       alert(cl1ele)
}):

您可以通过以下方法获得DOM中元素的XPath。它会发出类似于
/html/body/div[2]/div[1]/h4/div[3]…
(DOM中元素的实际路径)的警报


若并没有id(因为html是由php循环生成的,所以不能放置id)并且类是重复的,那个么下一步该怎么办?但是您可以在php循环中添加一个ID。或者你可以通知html内容adding.html()而不是.attr(“id”)。好的,有没有办法不通知id,content来做这件事。我的意思是我们可以直观地看到元素。而不是.attr(“id”)add.css(“border”,“4px实心红色”),元素将以红色边框。并删除警报。检查我的答案。它应该对你有用。
function getXPath( element ) {
    var val = element.value;
    var xpath = '';
    for ( ; element && element.nodeType == 1; element = element.parentNode ) {
        var id = $(element.parentNode).children(element.tagName).index(element) + 1;
        id > 1 ? (id = '[' + id + ']') : (id = '');
        xpath = '/' + element.tagName.toLowerCase() + id + xpath;
    }
    return xpath;
}   

$(document).on('click', '.block_docmanage', function (event) {           
    cl1ele = $(this).closest('.panel.panel-default.level1').find('.panel-headinglevel1 > h4 > .docmgCategoryBlock');
    var element_hierarchy = getXPath(cl1ele.get[0]);
    alert(element_hierarchy);
}):