我遇到了一些问题,解决了为什么我的Jquery被忽略。下面是Jquery的:如何使.top和.offset一起工作
$(document).ready(function() {
var $root = $('html, body ');
$('a').click(function(e) {
var href = $.attr(this, 'href');
$root.animate({
scrollTop: $(href).offset.top
}, 500, function() {
window.location.hash = href;
});
return false;
});
这是我试图去很好地滚动,如果我用.offset('top')
几乎对页面的一部分,jQuery的,但抛出了这个错误:
Uncaught TypeError: Cannot use 'in' operator to search for 'using' in top
这使jquery跳跃,而不是很好地滚动。
Jquery的代码的其余部分:
// Responsive menu
$(function() {
var pull = $('#pull');
menu = $('nav ul');
menuHeight = menu.height();
$(pull).on('click', function(e) {
e.preventDefault();
menu.slideToggle();
});
$(window).resize(function(){
var w = $(window).width();
if(w > 320 && menu.is(':hidden')) {
menu.removeAttr('style');
}
});
});
});
有没有人遇到过这种情况,并找到解决方案?
如果您想使用单个'var'语句声明多个值,那么您应该用逗号而不是分号分隔它们。 – BYossarian
...因为使用了分号,你就结束了'var',下一个语句只是一个任务,所以你会堕入[*隐式全局的恐怖*](http:// blog.niftysnippets.org/2008/03/horror-of-implicit-globals.html)。 –