当我点击一个按钮时,我希望能够跳下或滚动到页面上的特定div或目标。
$('#clickMe').click(function() {
//jump to certain position or div or #target on the page
});
我该怎么做?
答案 0 :(得分:45)
我会将链接看起来像一个按钮,因为这样就有一个no-js后备。
因此,您可以使用jquery为跳转设置动画。 No-js后退是没有动画的正常跳跃。
原始示例:
的 jsfiddle 强>
$(document).ready(function() {
$(".jumper").on("click", function( e ) {
e.preventDefault();
$("body, html").animate({
scrollTop: $( $(this).attr('href') ).offset().top
}, 600);
});
});
#long {
height: 500px;
background-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Links that trigger the jumping -->
<a class="jumper" href="#pliip">Pliip</a>
<a class="jumper" href="#ploop">Ploop</a>
<div id="long">...</div>
<!-- Landing elements -->
<div id="pliip">pliip</div>
<div id="ploop">ploop</div>
新示例以及链接的实际按钮样式,只是为了证明一点。
除了我将类.jumper
更改为.button
之外,所有内容基本相同,我添加了CSS样式以使链接看起来像按钮。
答案 1 :(得分:33)
$("html, body").scrollTop($(element).offset().top); // <-- Also integer can be used