在jquery中添加一个新图像并使其可单击

时间:2010-10-15 16:20:13

标签: jquery

我正在尝试在jquery中添加一个图像,然后使其可点击我已经在下面编写了以下代码,但它不起作用。

它会添加图像,但不会使其可点击。

 $(".HeaderGifs").click(function() { 
 alert("It Works");
 }); 


 $("#show_images").val()).append("<img class='HeaderGifs' src='images/text.jpg'></img>");

4 个答案:

答案 0 :(得分:5)

如果您希望具有特定类的元素始终响应click事件,则需要使用jQuery的方法之一来执行此操作。当你只使用click()时,你基本上告诉jQuery只将该事件监听器应用于具有该类的元素,而不是应用于当前和未来的每个元素。为此,jQuery具有on()方法:

$('.HeaderGifs').on('click', function() {....}

http://api.jquery.com/on/

修改:我还应该提及delegate()方法,以防万一您通过这种方式找到更多价值:

http://api.jquery.com/delegate/

答案 1 :(得分:0)

使用.live()将事件处理程序添加到您在页面加载后创建的元素

答案 2 :(得分:0)

为了绑定将来发生或插入的元素(例如,您以后插入整个img标记),您必须使用.live().delegate()函数。

下面提供了两者的详细文档 -

.live()

.delegate()

答案 3 :(得分:0)

要仅使图像可点击,请使用以下代码:

$('.HeaderGifs').on('click',"img",function() {....}