我有时已经看过这个,但我不知道如何实现它或如何搜索它。这就是为什么我想解释它的作用:
假设我们有一个图像,一个箭头,它指向下方,当您点击它时,页面向下滚动。当我现在向下滚动并到达指定点时,箭头指向上方并将我带回页面顶部。
感谢您的回复=)
编辑:我找到了一个例子。如果到达页面末尾,请参阅底部的小箭头以及它如何变化。 rorymcilroy.com答案 0 :(得分:1)
这是一个demo
这是一个jsfiddle演示,可以满足您的需求(使用scrollTo插件)
javascript:
$('#upDownArrow').click(function() {
if($(this).hasClass("arrowUp")) {
$.scrollTo( '#top', 500); // scroll to top
$(this).removeClass("arrowUp");
$(this).addClass("arrowDown");
} else {
$.scrollTo( '#bottom', 500); // scroll to bottom
$(this).removeClass("arrowDown");
$(this).addClass("arrowUp");
}
});
html:
<div id="#top"></div>
<div id="upDownArrow" class="arrowDown"><div class="arrow"></div></div>
<!-- add your content here -->
<div id="#bottom"></div>
css:
#upDownArrow {
position: fixed;
top: 50px;
right: 50px;
width: 30px;
height: 30px;
background: #33B;
}
#upDownArrow:hover {
background: #99F;
cursor: pointer;
}
#upDownArrow.arrowDown:hover .arrow {
border-top-color: #99F;
}
#upDownArrow.arrowUp:hover .arrow {
border-bottom-color: #99F;
}
#upDownArrow.arrowUp .arrow {
position: absolute;
border: 15px solid transparent;
border-bottom: 15px solid #33B;
top: -30px;
}
#upDownArrow.arrowDown .arrow {
position: absolute;
border: 15px solid transparent;
border-top: 15px solid #33B;
bottom: -30px;
}
如果你想要一个上一个/下一个按钮,你可能需要创建一个项目/ id /位置列表(查看scrollTo插件的文档,看看你可以使用哪些参数),这应该是这样的:
var steps = ["top","part1","part2","bottom"];
然后创建2个按钮,一个用于向上,一个用于向下然后使用:
var currentPosition = 0;
$("#buttonUp").click(function() {
if(currentPosition == 0) {
currentPosition = steps.length-1;
} else {
currentPosition--;
}
$.scrollTo('#'+steps[currentPosition],500);
});
$("#buttonDown").click(function() {
if(currentPosition == steps.length-1) {
currentPosition = 0;
} else {
currentPosition++;
}
$.scrollTo('#'+steps[currentPosition],500);
});
这是一个带有向上和向下按钮的演示:
jsfiddle demo with up and down
jsfiddle demo up and down fullscreen
此处另一个带有“按钮更改”的演示滚动;)
答案 1 :(得分:0)
如果我理解正确,this question与您的相同。
答案 2 :(得分:0)
我前一段时间写了this。我想这就是你要找的东西。
$('a').on('click', function (event) {
event.preventDefault();//stop the browser from jumping to the anchor
var href = $(this).attr('href'), // get id of target div from link e.g #one #two
oset = $(href).offset().top; // get the offset top of the div
$('html, body').stop().animate({
scrollTop : oset // animate the scrollTop property to the offset of target div
}, 1000, function () {
location.hash = href; // change the hash to target div
});
});