gpt4 book ai didi

javascript - 如何在 Jquery 或 javascript 中将三个事件绑定(bind)到同一个函数?

转载 作者:行者123 更新时间:2023-11-28 13:23:46 32 4
gpt4 key购买 nike

谁能解释一下如何将三个事件绑定(bind)到同一个函数?即当以下事件发生时应调用相同的函数。

  • 窗口卸载。
  • 按“ESC”按钮。
  • 点击“关闭”类(class)。

我通过以下方式编写了单击“.close”类的函数:

<script>
$(document).ready(function() {
var start = new Date().getTime();
var starttime = new Date(start);
$(".close").click(function () {
jwplayer('mediaplayer').stop();
end = new Date().getTime();
endtime = new Date(end);
$.ajax({
url: "/courses/136",
data: {'timeSpent': endtime - starttime},
});
});

});
</script>

对于 window.unload() 和按下 ESC 按钮也会发生同样的事情。有没有任何 Jquery 方法可以实现这一点。

最佳答案

创建一个负责处理事件的函数,然后您只需将该函数传递给您想要执行它的每个事件即可。

<script>
$(document).ready(function() {
var start = new Date().getTime();
var starttime = new Date(start);

var eventHandler = function (event) {
jwplayer('mediaplayer').stop();
end = new Date().getTime();
endtime = new Date(end);
$.ajax({
url: "/courses/136",
data: {'timeSpent': endtime - starttime},
});
};

$(".close").click(eventHandler);
$(window).on("unload", eventHandler);
$(document).on("keydown", function(e) {
if (e.which == 27) {
eventHandler(e);
}
});
});
</script>

关于javascript - 如何在 Jquery 或 javascript 中将三个事件绑定(bind)到同一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31004377/

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