问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

JavaScript 动态生成img 点击事件的问题

发布网友 发布时间:2022-04-29 03:16

我来回答

4个回答

懂视网 时间:2022-05-15 20:09

在前端中,我们经常要添加点击事件。尤其是在动态的元素上添加点击事件。经常会添加之后没有反应。
可能的原因:

  1. 点击事件的名称写错
    这种低级的错误经常犯,在js代码中添加的事件其实是没有添加的。两者的名字不同或者,选择器有问题没有选中元素。
    这个问题可以在调试的窗口选中元素在监听事件中去查看有没有添加上监听事件
    如图:
    这里写图片描述
    就已经添加上了点击事件,如果没有。那么检查你的变量名和选择器。


  2. 在调试中明明添加到了点击事件,但是就是没有响应
    今天就遇到了这个问题,这种问题就两种可能。

    ①有另外一个事件和他的功能相反,也执行了这就是事件的冒泡。所有没有反应,其实事件是执行了。打断点也可以进入断点。那么解决问题的办法有两种

一是直接return false 阻止了事件的冒泡同时也阻止了行为 代码如下

$("selector").on('click',function(){
  return false;
 });

二是使用 event.stopPropagation 来组织冒泡,这个只会阻止事件的冒泡,并不会阻止行为的冒泡 代码如下

$("selector").on('click',function(){
  event.stopPropagation();
 });

②布局的问题,点击事件加上了。但是没有点击到这个元素,所以时间没有触发。可能的原因就是,给这个元素定位之后有一个z-index属性设置了负值所以没有点击到这个元素。把这个属性改掉就可以了

热心网友 时间:2022-05-15 17:17

事件函数中可以通过event的target属性获得产生事件的对象.如:

var img = document.createElement("img");

img.attachEvent("onclick", ImgClick); 

function ImgClick(e) {
    var e = e || event;
    var img = e.target;//img 就是点击的图片对象  
}

追问

按照你的方法我写成下面那样 报错了 

img_operate.alt = "123456";

img_operate.attachEvent("onclick", ImgClick);

function ImgClick(e) {

    var e = e || event;

    var img = e.target; //img 就是点击的图片对象 

    alter(img.alt);

}

追答

你用的是attachEvent添加事件,好像没有target,换成srcElement试试吧

var img = e.srcElement; //img 就是点击的图片对象

热心网友 时间:2022-05-15 18:35

你好!!


是使用原生的javascript来实现么?

img.onclick = function(){
         yourFunc(this);
};

function yourFunc(obj){
        alert(obj.outerHTML);
}

热心网友 时间:2022-05-15 20:10

jquery each this追问什么意思呢? 没听懂

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
在张家界旅游可以买到什么特产或纪念品? 古韵荡春风毛笔字 黑龙江省理科生高三一模和二模都考了490分高考走一表有希望吗? 中药材三七的作用 三七有哪些作用与功效 现场管理失职的检讨书 管理失职检讨书 关于管理失职检讨书怎么写 四川有生产采煤机的大型企业吗? 四川华蓥山广能集团嘉华机械有限责任公司实力怎么样? 怎么给图片添加点击事件 js!div1层被div2层遮住了一半!div1里有张图片有onclick事件!如何让这个图片的点击事件起作用? 给加onclick事件,如何做到点击中间一定范围生效 点击图片(ONCLIKE)调用JS函数 标签中给onclick来触发input图片上传,js语句该怎么写 js里面点击图片触发事件 asp.net 怎样点击图片触发事件 如何给图片加click事件 jquery代码 怎样实现点击图片触发onclik事件提交表单 现在大专文凭用处大不大?有必要考个证吗? 京东小金库可以付商品吗?小金库可以分期还吗?一期为几天?@京东客服 在京东买东西是支持些什么银行卡买东西的,这分期服务说的是什么?一期指的是多久?这白条讲的是怎么样的 我京东商城购物打白条,选择24期。一期是多久?第一次使用分期付款。5600... 京东白条分期付款,多长时间为一期? 宾得K20和KX的选择!! 红米k20 pro升降摄像头能不能开啤酒😂反正我知道vivo能开。还有就是手机支持防水吗 红米K20后置摄像头朝下放在桌子上,没注意桌子上的小水珠,会进水么? 围棋机构取名字? 帮忙给机构取个名字 给魔方培训机构取什么名字? css块中加了onclick事件,怎么让块中的一个图片链接不执行onclick? javascript如何利用onclick事件输出图片?我这样写对吗? 写一个点击后改变图片的程序 onclick事件不执行 jsp中我给一个图片一个onclick方法,但是每次点击后执行了一次方法然后... HTML代码点击图片自动回复文字 怎样给css样式里引入的图片添加点击事件 开内资融资租赁公司什么要求条件 内资融资租赁公司注册、办理条件? 内资融资租赁公司注册的流程有哪些 注册内资融资租赁公司成立条件有哪些 内资融资租赁公司设立条件 如何申请设立“内资融资租赁公司”?注册资金需多少?本人新手,求救~ 福特cd6平台和cd4平台的区别 全系3.0L V6+10AT 国产林肯飞行家上市 实拍长安福特全新一代探险者,与林肯飞行家同平台,最快6月上市 福特探险者疑似预售28.58万元起,新车定位中大型SUV,并基于CD6平台打造。 全新国产福特探险者亮相 基于全新平台打造/六月正式上市 国产福特探险者相继到店,轴距超三米配6座,入门级就有276马力 曾抗衡普拉多如今终于国产,符合国六配全新10AT,还变成了后驱车 长安福特全新探险者将于6月中旬上市首次采用12.8英寸中控屏