Javascript jquerymobile";轻敲;按钮上的事件也会触发;轻敲;论其背后的因素

Javascript jquerymobile";轻敲;按钮上的事件也会触发;轻敲;论其背后的因素,javascript,jquery,html,iphone,jquery-mobile,Javascript,Jquery,Html,Iphone,Jquery Mobile,我有一个JQuery移动页面,其中的内容是一个列表,用户可以点击该列表来选择(突出显示)元素。选择所需数量的列表元素后,可以通过点击页脚中的“删除”按钮将其删除。该页面在我的桌面上运行良好,但在移动环境(iPhone和iPad)中,按下delete按钮也会触发按钮下方列表元素的点击事件 这张图片显示了我的页面通常的外观。如果用户点击删除按钮,所选元素将被删除,但删除按钮下方的元素将高亮显示 为什么会发生这种情况?我能做些什么来修复它 编辑(一些代码): 以下是事件映射器: $(document

我有一个JQuery移动页面,其中的内容是一个列表,用户可以点击该列表来选择(突出显示)元素。选择所需数量的列表元素后,可以通过点击页脚中的“删除”按钮将其删除。该页面在我的桌面上运行良好,但在移动环境(iPhone和iPad)中,按下delete按钮也会触发按钮下方列表元素的点击事件

这张图片显示了我的页面通常的外观。如果用户点击删除按钮,所选元素将被删除,但删除按钮下方的元素将高亮显示

为什么会发生这种情况?我能做些什么来修复它

编辑(一些代码): 以下是事件映射器:

$(document).delegate("#delete-button", "tap", deleteButtonTapped);
以下是函数:

var deleteButtonTapped = function(event, data) {
    event.stopPropagation();
    var possessedNotes = [];

    $('.ui-btn-up-e').each(function(){

        $(this).slideUp();
        var id = $(this).attr("id").split(" "); //id is loanId + " " + docId
        possessedNotes.push(notesList[[id[1], id[2]]]);
    });

//  console.log(possessedNotes);

    $.post("srv/move_notes_into_possession.php", { possessedNotes: possessedNotes }, function(response) {
        console.log(response);
    }, "json");

    $("#footer").slideUp();
};

DOM元素上的事件传播或“气泡”。您需要在事件处理程序中使用jQuery的
event.stopPropagation()
函数来阻止事件移动到父元素


谢谢您提供的信息!但是,这并没有解决我的问题。我不认为deletebutton元素和list元素是相关的DOM元素。另一个问题,当我将一个事件映射到一个函数时,我是否应该使用event.stopPropagation()?当你说“这并没有解决我的问题”时,可能是你做得不对-发布一些代码。如果删除按钮位于另一个元素的顶部,则事件将传递到下面的元素。不,您不一定要在每种情况下都停止传播。在
事件之后添加
事件.stopImmediatePropagation()
是否有任何区别?不,似乎是相同的。我找到了问题的根源。调用footer.slideUp()时,下面的元素将以相同的动作显示和点击。您知道我如何将页脚向后滑动,但不触发下面元素上的点击事件吗?非常感谢