首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

js绑定事件代理的坑

js通过事件代理的方式绑定跳转事件,我这里的逻辑是把click事件绑定在最外层container上面,如果e.target包含我已经写好的class,则执行跳转逻辑。...但是这种方式好像只能是在点击的元素的上面,也就是最内层的元素上面有相应的class才能跳转,在外层加同样的class不生效,说明是我对于事件代理的理解不够深刻,其实事件代理的作用就是为了把目标元素的事件绑定在外层做代理...(e) { console.log(e.currentTarget) //获得当前绑定监听事件的元素, container console.log(e.target)/...) } },false) document.getElementById("container").classList.add('jumpUrl');//写在后面也可以绑定成功...注意:内层元素,即点击的目标元素必须是点击时真正的目标元素,而不是外面一层; currentTarget绑定相应想要点击的class的时候必须是做代理的即做事件监听的元素。

4.9K20

JS 事件绑定事件监听、事件委托详细介绍 转

在JavaScript中,有三种常用的绑定事件的方法: 在DOM元素中直接绑定; 在JavaScript代码中绑定绑定事件监听函数。...; } 在JavaScript代码中绑定事件 在JavaScript代码中(即 script 标签内)绑定事件可以使JavaScript代码与HTML标签分离,文档结构清晰,便于管理开发。...; } 使用事件监听绑定事件 绑定事件的另一种方法是用 addEventListener() 或 attachEvent() 来绑定事件监听函数。下面详细介绍,事件监听。...; } 事件监听的优点 1、可以绑定多个事件。...事件委托优点 1、提高JavaScript性能。事件委托可以显著的提高事件的处理速度,减少内存的占用。 实例分析JavaScript中的事件委托事件绑定 ,这篇文章写得还不错。

8.7K31

取消css事件

但是,当其后代元素的pointer-events属性指定其他值时,鼠标事件可以指向后代元素,在这种情况下,鼠标事件将在捕获或冒泡阶段触发父元素的事件侦听器。...只有在元素visibility属性值为visible,且鼠标指针在元素内部或边界时,元素才会成为鼠标事件的目标,fillstroke属性的值不影响事件处理。 painted 只适用于SVG。...只有鼠标指针在元素内部时,元素才会成为鼠标事件的目标,fillvisibility属性的值不影响事件处理。 stroke 只适用于SVG。...只有鼠标指针在元素边界上时,元素才会成为鼠标事件的目标,strokevisibility属性的值不影响事件处理。 all 只适用于SVG。...只有鼠标指针在元素内部或边界时,元素才会成为鼠标事件的目标,fill、strokevisibility属性的值不影响事件处理。 示例

1.4K10

JS动态加载数据绑定事件--delegate() 方法

JS动态加载数据绑定事件-委托delegate() 方法 ---- W3C规范定义 定义用法 delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数...使用 delegate() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。...---- JavaScript动态加载的数据,同时给他加载绑定事件,我选用Jquwey中的 delegate() 方法 我的理解,delegate()方法属于异步式加载绑定,dom元素加载未完成之前,可以委托给...delegate() 方法来实现的绑定操作。...top-nav-left","click",function() { window.history.back(); }); }); ---- 第一个参数为 要点击的标签属性 第二个参数为 要绑定事件

7.8K30

React: 事件处理绑定方法

2、'合成事件' '原生事件' React 实现了一个“合成事件”层(synthetic event system),这个事件模型保证了 W3C 标准保持一致,所以不用担心有什么诡异的用法,并且这个事件层消除了...“合成事件”会以事件委托(event delegation)的方式绑定到组件最上层,并且在组件卸载(unmount)的时候自动销毁绑定事件。...2.2 原生事件 比如你在 componentDidMount 方法里面通过 addEventListener 绑定事件就是浏览器原生事件。...这里可以看我的相关文章 react 内存泄露常见问题解决方案 所有通过 JSX 这种方式绑定事件都是绑定到“合成事件”,除非你有特别的理由,建议总是用 React 的方式处理事件。...方式2方式3会有性能影响并且当方法作为属性传递给子组件的时候会引起重渲问题。

98820

React: 事件处理绑定方法

2、'合成事件' '原生事件' React 实现了一个“合成事件”层(synthetic event system),这个事件模型保证了 W3C 标准保持一致,所以不用担心有什么诡异的用法,并且这个事件层消除了...“合成事件”会以事件委托(event delegation)的方式绑定到组件最上层,并且在组件卸载(unmount)的时候自动销毁绑定事件。...2.2 原生事件 比如你在 componentDidMount 方法里面通过 addEventListener 绑定事件就是浏览器原生事件。...这里可以看我的相关文章 react 内存泄露常见问题解决方案 所有通过 JSX 这种方式绑定事件都是绑定到“合成事件”,除非你有特别的理由,建议总是用 React 的方式处理事件。...方式2方式3会有性能影响并且当方法作为属性传递给子组件的时候会引起重渲问题。

98010

【如果你要学JS 】——事件绑定及解除DOM事件

W3C已经定义了一系列的DOM接口,通过这些DOM接口可以改变网页的内容、结构样式。关于dom操作,我们主要针对于元素的操作。主要有创建、增、删、改、查、属性操作、事件操作。...(绑定事件)注册事件有两种方式:传统方式方法监听注册方式1.1传统方式1.利用on开头的事件onclick2....father.addEventListener('click', function () { alert('father') }, false); 注意:JS...onclickattachEvent只能得到冒泡阶段。...e 就是个事件对象写到我们侦听函数的小括号里面当形参来看事件对象只有有了事件才会存在,它是系统给我们自动创建的,不需要我们传递参数.事件对象是我们事件的一系列相关数据的集合跟事件相关的比信息

13910

js 动态生成 input 的绑定事件 blur 无效

/article/details/89230040 ☯ 背景描述 今天在进行代码编写时,我需要根据ajax返回的数据动态生成一个表格,而针对于其中的input标签,要求设置失去焦点的blur事件...最开始编写的 js 代码如下: /** * 当sku库存量变化时,对应总库存进行更新 */ $(".input-sku-stock").blur(function ()...$(".input-goods_stock").val(input_goods_stock); }); 但是发现,静态的表格是可以正常实现的,而动态新生成的却无法触发blur事件...ி 附录 1.针对我的问题,求助度娘,发现了下面的一个帖子,可作参考 动态添加的blur事件失效 [问题点数:60分,结帖人lawrendc] 时间相当久远... 2.最接近解决需求的文章如下...,建议可自行测试 动态生成input绑定事件无效如:blur 意见:异步导致绑定事件失败,需使用全局绑定事件 3.w3school 文档 - onblur 事件 这就是官方文档

8.8K00
领券