jQuery滚动到元素

我有这个input元素:

<input type="text" class="textfield" value="" id="subject" name="subject">

然后,我还有其他一些元素,例如其他文本输入,文本区域等。

当用户点击input#subject,页面应该滚动到页面的最后一个元素与一个漂亮的动画。它应该是滚动到底部而不是顶部。

页面的最后一项是带有的submit按钮#submit

<input type="submit" class="submit" id="submit" name="submit" value="Ok, Done.">

动画不应太快并且应该流畅。

我正在运行最新的jQuery版本。我更喜欢不安装任何插件,而是使用默认的jQuery功能来实现此目的。

回答:

假设您有一个ID为的按钮button,请尝试以下示例:

$("#button").click(function() {

$([document.documentElement, document.body]).animate({

scrollTop: $("#elementtoScrollToID").offset().top

}, 2000);

});

我已经在下面的示例中对其进行了测试。

<html>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>

<script>

$(document).ready(function (){

$("#click").click(function (){

$('html, body').animate({

scrollTop: $("#div1").offset().top

}, 2000);

});

});

</script>

<div id="div1" style="height: 1000px; width 100px">

Test

</div>

<br/>

<div id="div2" style="height: 1000px; width 100px">

Test 2

</div>

<button id="click">Click me</button>

</html>

以上是 jQuery滚动到元素 的全部内容, 来源链接: utcz.com/qa/432553.html

回到顶部