将 html 属性设置为自定义事件的 javascript

问题描述 投票:0回答:1

这很好用:

<div id='clicker' onclick='alert("clicked")'>clicker</div>
<script> $('#clicker').trigger('click'); </script>

我怎样才能完成这项工作(不使用 eval )?

<div id='clacker' onclack='alert("clacked")'>clacker</div>
<script> $('#clacker').trigger('clack'); </script>

尝试模仿内联 onclick 属性的行为,但使用我自己的自定义属性/事件,以对简单问题应用简单的解决方案。

javascript html attributes event-handling custom-events
1个回答
0
投票

您无法创建这样的自定义属性。只有内置事件才有相应的

on<event>
属性。

使用 jQuery

.on()
或 JavaScript
.addEventListener()
创建事件处理程序。

$("#clacker").on("clack", function() {
  alert('clacked');
});

$('#clacker').trigger('clack');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id='clacker'>clacker</div>

© www.soinside.com 2019 - 2024. All rights reserved.