我目前刚接触javascript和jquery, 我试图动画页面过渡动画,就像你在我添加的代码中看到的那样。一切都按预期工作,直到'openNavPages()'函数内的'jquery.animate'中的回调函数激活。 如果有人会向我解释我做错了什么,我将不胜感激。 p.s:我已经找到了类似的问题,但我找不到给出解决方案的答案。
function login(user, pass) {
if(localStorage.getItem('username').indexOf(user) >= 0 ) {
alert('hey');
}
}
答案 0 :(得分:1)
您已使用page
参数声明了内部回调函数。 jQuery在调用它时不会将任何参数传递给该函数,因此该参数不会被设置。由于它在那里,并且它具有相同的名称,因此您的内部函数使用此未定义的变量而不是外部范围中的变量。
要解决此问题,只需删除此参数:
function openNavPages(url){
var page = url;
$('#main').animate({opacity: '0'},800,function(){
window.location.href = page;
});
}
你可以完全取消page
变量,只需直接使用外部函数的url
参数:
function openNavPages(url){
$('#main').animate({opacity: '0'},800,function(){
window.location.href = url;
});
}
答案 1 :(得分:0)
行。非常尴尬我忘记了这里的$符号:('#main')。animate({opacity:'0'},800,function() 花了我一个小时的时间才发现......必须要睡一觉( - :