0

单击具有唯一 ID 的锚标记时如何取消绑定窗口?我正在尝试使用 beforeunload 以便当用户尝试离开页面时,他们会收到一个提示,要求确认他们想要这样做,但是页面上有一个锚标记,我不想这样做单击时发生。由于导航离开页面,它当前会弹出警告框,但我想为此锚标记创建一个例外。我该怎么做?当用户单击锚标记时,我尝试取消绑定 onbeforeunload,但我相信我的代码可能是错误的。关于解决此问题的任何建议?我不太了解绑定和解绑,所以请耐心等待。谢谢。

这是我正在尝试做的代码:

 $('#catshopbuy').click(function(){
        $(window).unbind('beforeunload');
}); 

其余的 jQuery:

$(window).bind('click', function(event) {
    if(event.target.href) $(window).unbind('beforeunload');
});
$(window).bind('beforeunload', function(event) {
    $('div.offerWindow').css("visibility", "visible");
    return 'Press "Stay on Page" and get a special offer!';
});

$('#catshopbuy').click(function(){
        $(window).unbind('beforeunload');
}); 
4

1 回答 1

1

应该是$(window).unbind('beforeunload');

所以是这样的:

$(function() {
     $(window).bind('beforeunload', function() {
          return 'Press "Stay on Page" and get a special offer!';
     });

     $('#catshopbuy').click(function(){
         $(window).unbind('beforeunload');
     });
});
于 2013-09-06T20:04:24.563 回答