Javascript 如何从jquery中的另一个对象访问在一个对象中声明的变量
我试图从另一个对象访问在一个对象中声明的变量,但它不起作用Javascript 如何从jquery中的另一个对象访问在一个对象中声明的变量,javascript,jquery,Javascript,Jquery,我试图从另一个对象访问在一个对象中声明的变量,但它不起作用 我的 我的脚本: $(function(){ homePage.tooltipshowhide(); homePage.hidetooltip(); }); (function( $ ){ homePage = { tooltipshowhide:function(){ var time = 0; $('.toggle-ttp').tooltip({html:true,placem
我的
我的脚本:
$(function(){
homePage.tooltipshowhide();
homePage.hidetooltip();
});
(function( $ ){
homePage = {
tooltipshowhide:function(){
var time = 0;
$('.toggle-ttp').tooltip({html:true,placement: 'bottom',trigger: 'manual'}).tooltip('show');
time = setInterval(homePage.hidetooltip, 4000);
},
hidetooltip:function(){
clearInterval(time);
$('.toggle-ttp').tooltip('destroy');
$('.toggle-ttp').tooltip({html:true});
$('#continueBtnTop').removeClass('toggle-ttp');
}
};
})( jQuery );
两种不同的作用域 您应该执行以下操作(仅在调用以下对象方法后创建对象):
;(function( $ ){
window.homePage = {}
// ...
});
;(function($) {
window.homePage = window.homePage || {};
window.homePage.tooltipshowhide();
// ...
});
可以通过在函数外部定义变量并更改其范围来实现这一点:
(function( $ ){
homePage = {
toimeone: 0,
tooltipshowhide:function(){
$('.toggle-ttp').tooltip({html:true,placement: 'bottom',trigger: 'manual'}).tooltip('show');
this.toimeone = setInterval(homePage.hidetooltip, 4000);
},
hidetooltip:function(){
clearInterval(this.toimeone);
$('.toggle-ttp').tooltip('destroy');
$('.toggle-ttp').tooltip({html:true});
$('#continueBtnTop').removeClass('toggle-ttp');
}
};
})( jQuery );
将变量放在主页对象之外。解决方案之一是在对象之外定义时间变量,另一个是将此变量定义为如下所示的对象字段
$(function(){
homePage.tooltipshowhide();
homePage.hidetooltip();
});
(function( $ ){
homePage = {
time: 0,
tooltipshowhide:function(){
$('.toggle-ttp').tooltip(
{html:true,placement: 'bottom',trigger: 'manual'}).tooltip('show');
this.time = setInterval(homePage.hidetooltip, 4000);
},
hidetooltip:function(){
clearInterval(this.time);
$('.toggle-ttp').tooltip('destroy');
$('.toggle-ttp').tooltip({html:true});
$('#continueBtnTop').removeClass('toggle-ttp');
}
};
})( jQuery );
我收到此错误未捕获引用错误:主页未定义代码中还有其他问题,我已修复其中一些问题:我收到此错误-->未捕获引用错误:主页未定义