每次执行div时如何处理div图像点击事件

时间:2014-04-25 07:15:18

标签: javascript jquery javascript-events

function first(Objs) {
    var imgid= Objs;
    secondMethod(imgid);
    $('#imags_'+imgid.id).one('click', function(e) {
        alert(imgid.id)
    });    
}

function secondmethod(imgid) {
    var boxText = document.createElement("div");
    boxText.id="imags_"+imgid.id;
    boxText.innerHTML = '<div id="content" >' + '<img src=\"image.png\" width=\"50px\" height=\"50px\" id ="\images_id\" />' + '</div>';         
}
  • 我每隔10秒刷新(执行)第一个方法(Objs.id=1)。
  • 所以它的两个方法每10秒执行一次,
  • 3次刷新后的例子(即3次执行),然后当我点击图像时,我得到3次imageid(即警报输出为1)。
  • 当我点击带有最后执行的对象ID的图像时,如何只获得一个输出。
  • 请帮助我解决这个问题。

1 个答案:

答案 0 :(得分:0)

给图像一个类:

boxText.innerHTML = '<div id="content" >'+        
    '<img src=\"image.png\" width=\"50px\" height=\"50px\" class ="\images_id\" />'+
    '</div>';

并使用委托活动:

$(document).on('click', '.images_id', function() {
    alert(this.id)
});

此外,您的示例没有显示,但我认为boxText会在某个时候附加到DOM?