requirejs在代码中设置事件
requirejs setting up events in code
我们开始使用typescript,因为它很容易编译成模块,所以我们也从requirejs开始。有没有一种方法可以直接在html中绑定事件?像
<a href="#" onclick="foo.bar();">
<img src="foo.png" alt="foo">
</a>
将其动态设置为通常没有问题
$("foo.selector").click((e) => {
this.bar();
e.preventDefault();
});
但我们碰巧有2-3页,其中有多达数百(千)个表行和多达10个不同的事件/行。仅仅设置事件就需要0.5秒(看起来可能不多,但加上其他页面部分和其他东西,这需要很多)。我已经试着把它移到"按需"设置,所有线路都有mouseover => setup all the events
,但效果不太好。我没有任何优化的想法了,只有一个,将evnet绑定移动到html中,并在代码呈现后准备好它们。不管怎样,require块的内部似乎被屏蔽了,不受这种行为的影响。
有没有一种方法可以在html中使用它?
通常认为使用像onclick
这样的事件处理属性是非常糟糕的主意,人们正试图摆脱这种方法。
如果您需要动态处理单击,并且不希望(或不能)将事件侦听器直接分配给元素,请考虑使用事件委派。有点像
$(document).on('click', "foo.selector", function(event) {
event.preventDefault();
console.log("You clicked:", this);
});
基本上,在这种情况下,您在document
对象上定义了一个事件侦听器,不管页面上有多少指定类型的项(如果有的话)。它还将自动处理在定义侦听器之后添加到页面中的任何新元素。
相关文章:
- 我可以在FullCalendar中设置事件ClickLimit弹出窗口的样式吗
- 如何在表单提交时在谷歌分析上设置事件跟踪
- requirejs在代码中设置事件
- 如何在javascript中设置事件的顺序
- 如何在按钮单击中设置事件的优先级
- 在扩展事件发射器的 ES6 类定义中设置事件侦听器
- 如何使用 XML 合金标记在钛金中的列表视图上设置事件
- 使用 jQuery 循环设置事件函数触发器
- JQuery 设置事件触发的计时器
- 如何使用 jQuery 将设置事件侦听器推迟到 ajax 调用和渲染完成后
- 如何在 for 循环中维护迭代变量的原始值,该循环设置事件调用,其中迭代值是函数的一部分
- 高图表 + 从 jquery 中的选项设置事件点击
- 使用ES6箭头函数设置事件侦听器
- Safari中没有密钥设置事件
- 如何在JQuery中设置事件
- 如何将字符映射到IE/Mozzilla密钥码,以便与Javascript密钥设置事件一起使用
- Mootools正在为循环设置事件
- 如何在流星中设置事件目标的文本和颜色?
- 在特定层(google maps)上设置事件监听器
- 如何为谷歌图表设置事件