gpt4 book ai didi

javascript - 迷失在 javascript 范围内

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

有人可以帮我解决下面的(简化的)代码吗?我试图从幻灯片事件函数中调用 doTheSlide() 函数。我对 JS 范围的理解仍然有点可疑。

实现这一目标的正确方法是什么?我收到此错误:

Uncaught TypeError: object is not a function

(function($) {

bindEvent = function(slider) {

slider.bind('slide', function(event, ui) {

doTheSlide(ui.value);
});
}

doTheSlide = function(value) {
//Animate the slide
}


var methods


})(jQuery);

最佳答案

您需要在某处声明“doTheSlide”。您似乎将其用作全局函数,这在大多数情况下都是错误的。确保所有内容都已正确声明(使用 var 或使用命名函数)。

这是代码的固定版本(我喜欢的方式):

(function($) {
function doTheSlide(value) {
//Animate the slide
}

function bindEvent(slider) {
slider.bind('slide', function(event, ui) {
doTheSlide(ui.value);
});
}
})(jQuery);

记住在使用函数之前先声明它们。调用稍后声明的函数是可行的,但这不是好的风格。

替代语法:

(function($) {
var doTheSlide = function(value) {
//Animate the slide
};

var bindEvent = function(slider) {
slider.bind('slide', function(event, ui) {
doTheSlide(ui.value);
});
};
})(jQuery);

关于javascript - 迷失在 javascript 范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6659576/

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