Jquery脚本停止nav工作
在我的一页中,我添加了一个脚本,以便在不同的div框之间平滑移动。但是突然导航停止了工作。这是最后一个打破它的Jquery脚本停止nav工作,jquery,navigation,nav,Jquery,Navigation,Nav,在我的一页中,我添加了一个脚本,以便在不同的div框之间平滑移动。但是突然导航停止了工作。这是最后一个打破它的 <script> $(function(){ var sections = {}, _height = $(window).height(), i = 0; // Grab positions of our sections $('.section').each(function(){ sections[this.name] =
<script>
$(function(){
var sections = {},
_height = $(window).height(),
i = 0;
// Grab positions of our sections
$('.section').each(function(){
sections[this.name] = $(this).offset().top;
});
$(document).scroll(function(){
var pos = $(this).scrollTop();
// Look in the sections object and see if any section is viewable on the screen.
// If two are viewable, the lower one will be the active one.
for(i in sections){
if(sections[i] > pos && sections[i] < pos + _height){
$('a').removeClass('active');
$('#nav_' + i).addClass('active');
}
}
});
});
$(".scroll").click(function(event){
event.preventDefault();
var full_url = this.href;
var parts = full_url.split("#");
var trgt = parts[1];
var target_offset = $("#"+trgt).offset();
var target_top = target_offset.top;
$('html, body').animate({scrollTop:target_top}, 500);
});
</script>
$(函数(){
var节={},
_高度=$(窗口).height(),
i=0;
//抓住我们部门的位置
$('.section')。每个(函数(){
节[this.name]=$(this.offset().top;
});
$(文档)。滚动(函数(){
var pos=$(this.scrollTop();
//查看sections对象,查看屏幕上是否可以看到任何部分。
//如果可以看到两个,则较低的一个将是活动的一个。
第(i)节{
if(截面[i]>pos和截面[i]
控制台在第14行显示错误
$('#nav').localScroll();
此外,无法读取未定义的属性“top”
错误
更新
看起来没有id为的元素第1节
应为导航单元第1部分
这条线
$("#"+trgt).offset();
应该是
$("#nav_"+trgt).offset(); OR $('[href="#' + trgt + "]').offset()
另外,当您获得偏移量()
值时,请确保元素未隐藏。必须喜欢Chrome的检查器…您错过了一个分号
<script type="text/javascript">
$(function(){
$('#nav').localScroll();
});
</script>
$(函数(){
$('#nav').localScroll();
});
为什么要使用
?本说明介绍了如何使用
试试这个:
<div id="nav">
<ul>
<li><a id="nav_section1" href="#section1" class="scroll active">Section 1</a></li>
<li><a id="nav_section2" href="#section2" class="scroll">>Section 2</a></li>
<li><a id="nav_section3" href="#section3" class="scroll">>Section 3</a></li>
<li><a id="nav_section4" href="#section4" class="scroll">>Section 4</a></li>
<li><a id="nav_section5" href="#section5" class="scroll">>Section 5</a></li>
<li><a id="nav_section6" href="#section6" class="scroll">>Section 6</a></li>
<li><a id="nav_section7" href="#section7" class="scroll">>Section 7</a></li>
</ul>
</div>
说对象没有方法localScroll
,您在哪里定义了localScroll()
?请阅读我的否决答案,我所做的更新应该可以解决问题。从
更改为
我从或后面的最后一位得到一个语法错误。当我试图删除该部分时,语法错误消失了。我也可以再次使用导航,但它没有转到不同的div,它只是向下滚动了大约500 px。你能创建一个复制isuue的提琴,以便它可以工作吗