Getting the root element that a delegated event is bound to - jQuery

后端 未结 3 1604
孤街浪徒
孤街浪徒 2020-12-19 04:38

Taking the following code:

    // Bind the click event to the thumbnails.
    $(\"ul.hpList\").on(\"click\", \"a.hpThumb\", function (event) {

        event         


        
3条回答
  •  温柔的废话
    2020-12-19 04:47

    Since jQuery 1.7, the delegateTarget property is included in the event object given to you as the first parameter, which (according to the docs), gives you:

    The element where the currently-called jQuery event handler was attached.

    So give the following a go;

    $("ul.hpList").on("click", "a.hpThumb", function (event) {
        event.preventDefault();
    
        var $this = $(this),
        var $hpList = $(event.delegateTarget);
    
        changeItem($this, $hpList);
    });
    

提交回复
热议问题