为了账号安全,请及时绑定邮箱和手机立即绑定

通过JS创建图片后如何判断图片是否被点击?

通过JS创建图片后如何判断图片是否被点击?

慕勒3428872 2023-10-30 15:52:49
单击按钮后,我在 js 中创建了一个图像。渲染后单击图像时如何对图像执行操作?这是我尝试过的代码:function sayhi(){    for (var m = 0; m <animals.length;m++){        var image = document.createElement('img');        image.src = "animalgameback.jpg";        image.id = animals[m];        document.getElementById('body').appendChild(image);         image.onclick = flip(this);    }}但是,当我设置 onclick 图像属性时,它仅在渲染图像之前执行任务。有什么建议么?
查看完整描述

4 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

你必须改变线路:

image.onclick = flip(this);

对此:

image.addEventListener("click",function flip(this){ }, this);


查看完整回答
反对 回复 2023-10-30
?
万千封印

TA贡献1891条经验 获得超3个赞

image.addEventListener("click", function(event) {

  flip(this) 

}, false)

this如果您想访问函数的作用域,请记住不要使用箭头函数。


查看完整回答
反对 回复 2023-10-30
?
呼唤远方

TA贡献1856条经验 获得超11个赞

事件处理程序必须是一个函数,因此 :::

改变这个

image.onclick = flip(this);

对此

image.onclick = function(){flip(image);}


查看完整回答
反对 回复 2023-10-30
?
温温酱

TA贡献1752条经验 获得超4个赞

您没有将此处的函数 Flip 绑定到“click”事件,而是将结果或调用标识为 Flip 的函数的返回值绑定到该事件。添加到调用中的 this 值可能是 window.


image.onclick = flip;

以及如下所示的函数:


function flip (event) {

  var

    eImage = event.target;

  ...


  ...

}

可能是一个快速的解决方案。


查看完整回答
反对 回复 2023-10-30
  • 4 回答
  • 0 关注
  • 148 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信