当到达底部页面部分时,Jquery用锚文本隐藏Div
Jquery hide Div with anchor text when bottom page section is reached
我有一个自动滚动功能,有一个静态箭头,可以让用户滚动到页面的下一部分。当用户到达"联系人"部分(最后一页)时,我希望箭头隐藏起来,因为没有其他页面可以向下滚动。
更新-
目前,导航箭头出现在最后一页,但它也出现在关于和介绍部分。。如何修复
Jquery-更新的v3
$(function() {
$('a.page-scroll').bind('click', function(event) {
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500, 'easeInOutExpo');
event.preventDefault();
});
});
function nextSection()
{
var scrollPos = $(document).scrollTop();
$('#section-navigator a').each(function () {
var currLink = $(this);
var refElement = $(currLink.attr("href"));
if (refElement.position().top > scrollPos) {
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500, 'easeInOutExpo');
event.preventDefault();
location.hash = "";
location.hash = currLink.attr("href");
if ($($anchor.attr('href')).attr('id') == "contact") {
$("div.page-scroll").hide();
}
return false;
}
});
}
HTML
<div class="page-scroll">
<img class="arrow-down page-scroll-btn" src="img/arrow_dark.png" onclick="nextSection()" />
</div>
谢谢!
从外观上看,您使用链接作为下一个选择器的id,因此您应该在if.中使用#contact
此外,您在错误的位置关闭了if括号)
if ($anchor.attr('href') == "#contact") {
}
如果你想将其与目标div id进行比较,那么你需要做这样的事情:
if ($($anchor.attr('href')).attr('id') == "contact") {
$("div.page-scroll").hide();
}
但这似乎是为了得到相同的结果而进行的额外处理
更新
考虑到你所有的编辑——没有一个真的有帮助,因为它们不会创建MCVE——我们似乎离最初的问题越来越远了。我会做以下事情:
在html中手动绑定时,去掉jquery顶部的jquery onclick绑定函数,将下一节函数更改为:
function nextSection() {
var currentPos = $(document).scrollTop();
$('#section-navigator a').each(function() {
var currLinkHash = $(this).attr("href");
var refElement = $(currLinkHash);
if (refElement.offset().top > scrollPos) { // change this to offset
$('html, body').stop().animate({
scrollTop: refElement.offset().top // just use refElement
}, 1500, 'easeInOutExpo');
location.hash = "";
location.hash = currLinkHash;
if (refElement.attr('id') == "contact") { // hide the scroller if the id is contact
$("div.page-scroll").hide();
}
return false;
}
});
}
相关文章:
- jQuery文本属性中的Html代码
- JQuery文本区域字母表
- jquery文本输入框传递给变量
- jQuery文本解析器
- JQuery文本旋转器
- jQuery文本返回NULL
- 使用WP UI从选项卡到选项卡的Jquery文本链接
- 正在寻找类似于mircrosoft office autocorrect的jquery文本区域脚本
- JQuery文本编辑器-在工具栏中添加其他下拉列表
- jQuery文本未使用fadeIn正确显示
- jQuery文本区域计数器
- Jquery 文本区域未更新
- 在它们之间切换时,jQuery 文本显示在活动文本下方
- Jquery文本输入行为搞笑
- 在 jQuery 文本区域中编辑 Div 内容
- jQuery文本html操作,以查找大量文本中出现的字符,然后更改其颜色
- 需要 Jquery 文本动画自定义帮助
- Jquery 文本动画
- Jquery - 文本等于(邮件输入错误)
- 将 jquery 文本替换为 TM 字符实体,并用 jquery 替换