gpt4 book ai didi

javascript - 使用 jquery 从外部源(父级中的子级)捕获点击事件

转载 作者:行者123 更新时间:2023-11-28 15:43:46 25 4
gpt4 key购买 nike

我正在使用massrelevances 轮询功能。我添加了一个嵌入代码(如下),它将 html 注入(inject)到网页中。

嵌入第三方代码

<div class="mr-space" data-space-id="project-id"></div>
<script src="//platform.massrelevance.com/js/massrel.js"></script>
<script>
massrel.ui.load();
</script>

我想从嵌入代码注入(inject)的 html 中捕获点击事件。

它会注册的唯一点击是当我将其设置为在正文中查看时,这是不切实际的,我需要它在 div.option-buttons 内注册点击

var link = {};

link.init = function() {
$('.option-buttons').contents().on('click', function () {
alert('clicked');
});
}

window.onload = link.init;

从上面的嵌入代码生成的 html

<div class="option-buttons">
<a href="">Vote</a>
</div>

最佳答案

不清楚,但你可以尝试

    $(document).on('click', '.option-buttons a', function () {
alert('clicked');
});

编辑

事件处理程序仅绑定(bind)到当前选定的元素;当您的代码进行事件绑定(bind)调用时,它们必须存在于页面上。

委托(delegate)事件的优点是它们可以处理来自稍后添加到文档中的后代元素的事件。

您需要使用Event Delegation 。您必须使用.on()使用委托(delegate)事件方法。

一般语法

$(document).on(event, selector, eventHandler);

理想情况下,您应该将 document 替换为最接近的静态容器。

关于javascript - 使用 jquery 从外部源(父级中的子级)捕获点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23022169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com