我正在动态生成img标签。并执行点击事件。为此,我使用了jQuery live方法。它在Mozilla Firefox和谷歌浏览器中工作正常但在IE中不起作用。这是我的代码,
<div class="itemremove"><a href="action">remove</a></div>
在页面加载时使用jQuery我正在用一些图像替换删除文本,如“X”。
$(".itemremove a").text(""); // deleting text
$(".itemremove a").append("<img class='removeImg' alt='Remove'
src='remove_item.png'>"); // adding image in that place
接下来,当点击图像时,事件未触发。
$(".removeImg").live("click", function(){
alert("Item removed");
});
IE中没有警告框但是,在firefox和chrome中工作。任何人都可以告诉我解决方案吗?
答案 0 :(得分:0)
我猜你错过了右括号:
$(".removeImg").live("click", function(){
alert("Item removed");
}
); //this one
或尝试:
$(".itemremove a").live("click", function(){
alert("Item removed");
});
答案 1 :(得分:0)
我会点击a:
$(".itemremove a").live(...
但是我会使用背景来放置图像,并使用文本缩进:-10000作为文本。这样它是可访问的,你不必使用javascript这是css的第二个选项。
答案 2 :(得分:0)
.live()自jQuery 1.7(http://api.jquery.com/live/#live-events-map)起不推荐使用。它被.on()代替:
$(".itemremove a").on("click", function(){
alert("Item removed");
});
不应该对结果产生太大的影响:)