gpt4 book ai didi

javascript - jQuery - 将事件处理程序附加到预先存在的点击事件

转载 作者:IT王子 更新时间:2023-10-29 03:22:03 26 4
gpt4 key购买 nike

我有一个已经定义的点击事件。我想知道最好的方法是在不触及此代码的情况下将另一个事件处理程序附加到此事件(如果可能)。

有没有办法将另一个事件处理程序附加到已定义的点击事件?

这是当前的点击事件定义:

 $(".HwYesButton", "#HwQuizQuestions")
.append("<a href='javascript:void(0);' rel='.HwYesButton'>Yes</a>")
.click(function(event) {
var button = $(this).parent();
var questionId = button.attr('id');
$iadp.decisionPoint["HwQuizYourself"].Input.inputProvided(questionId);
button.find(".HwNoButton").removeClass("HwButtonSelected");
$(this).addClass("HwButtonSelected");
button.removeClass("HwQuestionSkipped");

$iadp.flat.setBoolean(questionId, true);
return false;
});

最佳答案

你唯一能做的就是附加另一个(额外的)处理程序:

$(".HwYesButton", "#HwQuizQuestions").click(function() {
// something else
});

jQuery 将按照处理程序附加到元素的顺序调用处理程序。

您不能“扩展”已经定义的处理程序。


顺便说一句。你的表述有点不精确。您没有定义点击事件。您仅附加点击事件处理程序。当用户点击某个元素时,浏览器会生成点击事件。

您可以为一个元素设置任意数量的点击处理程序。也许您已经习惯了在纯 JavaScript 中这样做:

element.onclick = function() {}

使用这种方法,您确实只能附加一个处理程序。但是JavaScript provides some advanced event handling methods我假设 jQuery 使用了它。

关于javascript - jQuery - 将事件处理程序附加到预先存在的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5183529/

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