-3

我有一些代码可以在单击按钮时弹出一个 div。我想要做的是,当我点击按钮时,它会弹出一个新的 div + 一个不透明的背景 div - 这很好。但是我试图做的不仅仅是当我点击关闭按钮时它会隐藏两个 div,当我点击背景 div 时它也会隐藏它们。当我单击按钮时,它会隐藏两者。但是当我点击背景 div 时,它只是隐藏背景并保留弹出窗口。这是代码:

function closebox() 
{
    var boxID = $(this).attr("box_id");

    $("#opacback").animate( { "opacity": "0" }, 500, function()
    {
        $('#inside_image'+boxID)
            .removeClass()
            .addClass('animated flipOutX')
            .fadeOut('slow');  
        $("#opacback").hide(); 
    });    
}    

正如我所说,当我单击背景时,它只是删除了背景 div 的不透明度,但保留了弹出窗口。当我单击关闭按钮时,它会同时执行。由于两者都使用相同的功能,这怎么可能?

这是后台 div 调用:

$('#opacback').live('click', closebox);
4

1 回答 1

0

$(this) 将根据单击的内容引用不同的内容。

如果您单击的一个或多个元素没有该box_id属性,您的脚本将中断。

如果您发布 HTML,有人可能会提供更具体的答案。

于 2013-08-15T00:33:37.113 回答