http://www.henrybuilt.com/trade2/resource.php?id=100
查看上面的链接。登录:asdf,asdf
编辑:登录后点击上面链接上的竹子。谢谢。
以下代码(切换'弹出'窗口(div))将不会在页面上执行,但在开发面板中复制和粘贴时将起作用。
$(".maintypedata img").click(function() {
console.log("test");
if(open == false) {
var src = $(this).attr("src");
$(".popup").html("<img src='"+src+"'/>");
open = true;
$(this).addClass("selected");
$(".popup").slideFadeToggle(function() {
});
}
});
如何从脚本中运行它?
答案 0 :(得分:1)
您显示的点击处理程序绑定到代码运行时存在的任何".maintypedata img"
元素。但是,有问题的img元素会在“之后”动态地附加到文档中单击Bamboo“选项。因此,您需要在附加元素后运行.click()
代码(这是您通过从控制台运行它所执行的操作)或将其更改为委派事件处理程序:
$(".maintypedata").on("click", "img", function() {
console.log("test");
if(open == false) {
var src = $(this).attr("src");
$(".popup").html("<img src='"+src+"'/>");
open = true;
$(this).addClass("selected");
$(".popup").slideFadeToggle(function() {
});
}
});
也就是说,将click处理程序绑定到最初存在的元素,在本例中为".maintypedata"
,但是在.on()
的第二个参数中指定一个选择器,jQuery只会在单击时运行您的处理程序item匹配事件发生时的第二个选择。
(委托处理程序也比将相同的处理程序绑定到许多单独的元素更有效,但这只是一个额外的好处。)