0

当用户单击正文中的任何位置时,我想关闭弹出广告。

这是我的网站http://daplonline.in/。当用户点击网站中的任何位置时,我想隐藏或关闭广告。

这是弹出的html代码:

<div style="top: 100px; background-color: rgba(5, 5, 0, 0.7); display: block;" id="wd1_nlpopup" data-expires="30" data-delay="10">
    <div id="overlay">
        <a href="#closepopup" id="wd1_nlpopup_close">x</a>
        <div class="content">  
            <a href="buyonline.php"><img src="images/online_course.gif"/></a>
        </div>                  
    </div>
</div>

这是 JavaScript 代码:

<script type="text/javascript">
    $("body").click(function(){
        alert("me");
    });
</script>
4

7 回答 7

6

检查此代码 100% 工作和测试.. :)

$( document ).ready(function() {
$('#wd1_nlpopup_overlay').click(function() {

     $('#wd1_nlpopup_overlay').hide();
     $('#wd1_nlpopup').hide();
    });
});
于 2013-09-19T06:58:53.337 回答
2

您需要将选择器编辑到下面,

$(function(){
   $("#wd1_nlpopup_overlay").click(function(){
      alert("me");
   });
})

因为实际上你点击的是覆盖而不是身体。

现在,由于此弹出窗口可能稍后会加载,因此您需要如下委托事件处理程序,

$(function()
{
    $(document).on('click',"#wd1_nlpopup_overlay",function(){
        alert("me");
    });
})
于 2013-09-19T06:48:52.483 回答
1

在我看来,给关闭弹出 btn 一个点击事件。你可以这样做:

$("#wd1_nlpopup_overlay").click(function(){
   $("#wd1_nlpopup_close").click(); // <--this will fire an event to the closebtn
});
于 2013-09-19T06:55:36.460 回答
0

您好,您忘记了 jQuery 文档初始化程序。试试这个:

$(document).ready(function() {
    $("body").click(function(){
      $("#wd1_nlpopup_close").click();
    });
});
于 2013-09-19T06:51:21.500 回答
0

尝试

$('body').on('click', function(event){
    var popup = $('#wd1_nlpopup');
    if($(event.target).not(popup)){
        $(popup).hide();
    }
});
于 2013-09-19T06:57:10.530 回答
0

您可以使用隐藏或删除弹出窗口

$('#your-id').hide();

或者

$("#your-id").remove();
于 2017-10-25T08:39:20.990 回答
-1

http://jsfiddle.net/jasonday/xpkFf/如果单击任何位置,它将删除弹出窗口

$('#open').click(function() {
    $('#dialog').dialog('open');

});



$('#dialog').dialog({
    autoOpen: false,
    modal: false
});

// Close Pop-in If the user clicks anywhere else on the page
             jQuery('html') //set for html for jsfiddle, but should be 'body'
              .bind(
               'click',
               function(e){
            if(
             jQuery('#dialog').dialog('isOpen')
             && !jQuery(e.target).is('.ui-dialog, a')
             && !jQuery(e.target).closest('.ui-dialog').length
            ){
             jQuery('#dialog').dialog('close');
            }
               }
              );
于 2013-09-19T06:56:38.423 回答