javascript - 自定义 Javascript 灯箱

标签 javascript jquery onclick

我正在尝试为我的网站上的图像创建自己的灯箱。是的,我知道有 lightbox2 并且它是免费的,但我喜欢挑战。我在灯箱本身上遇到点击事件问题,我试图让它删除灯箱,但点击事件似乎没有注册,并且我在谷歌浏览器的开发工具中没有错误。 这是我的代码:

$(document).ready(function(){
    $(".lbox").click(function(){
        $("body").append("<DIV class='lbox_container'><DIV class='img_container'><IMG src='" + this.src + "'/></DIV></DIV>");
        $(".lbox_container").width($(document).width()).height($(document).height());
    });
    $(".lbox_container").click(function(){
        $(".lbox_container").remove();
    });
});

最佳答案

而不是

$(".lbox_container").click(function(){
    $(".lbox_container").remove();
});

使用这个:

$("body").on('click','div.lbox_container', function(){
    $(".lbox_container").remove();
});

您需要这样做,因为 jQuery 不会在 DOM 中的新项目上注册 .click() 事件,而只会在调用 document.ready 函数时页面上存在的项目上注册 .click() 事件。

关于javascript - 自定义 Javascript 灯箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11123788/

相关文章:

javascript - css 删除文本输入样式

javascript - 使用 JavaScript 创建文本片段

javascript - JS字数统计问题

javascript - Leaflet- 标记点击事件工作正常,但类的方法在回调函数中未定义

jquery - 如何在 onclick 时放下可拖动的 div?

javascript - 如何允许使用 Leaflet.draw 编辑要素/多边形?

php - 对象数组突然空了

javascript - 如何使用 D3 在现有图形中添加 X 和 Y 轴

javascript - html 表格导出到 Excel 边框未显示在 Excel 工作表中

java - JSP 中的多个按钮