gpt4 book ai didi

javascript - 具有相同变量的Jquery多个函数

转载 作者:行者123 更新时间:2023-11-30 12:17:21 26 4
gpt4 key购买 nike

我有以下 mouseenter/mouseleave 功能:

$('.obj').on('mouseenter', function(){
var obj_top = $(this).offset().top,
obj_max = obj_top + 10;
}).on('mouseleave', function(){
var obj_top = $(this).offset().top,
obj_max = obj_top + 50;
});

因为这一切都发生在同一个对象中,我是否可以在整个函数中重用 obj_top 变量而不必复制它?

最佳答案

你不能,因为这些变量在声明它们的函数范围内是局部的,除非你在共享范围内声明它。

但如果您不想再次重复,则可以对 mouseentermouseleave 使用单个事件处理程序并检查 event.type 以查看哪个事件导致触发,根据该事件决定要添加到 obj_top 的值以找出 obj_max

$('.obj').hover(function (e) {
var obj_top = $(this).offset().top,
obj_max = obj_top + (e.type == 'mouseenter' ? 10 : 50);
});

关于javascript - 具有相同变量的Jquery多个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32094186/

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