如何使用 jquery 向下滚动到 div 的特定子级

发布于 2024-12-06 08:57:38 字数 1054 浏览 0 评论 0原文

如何向下滚动到 div 的第 n 个子级。考虑这段代码

 <span id="click_me">Click me to scroll down to nth child</span>

Messages div 有 6 个子级。我想向下滚动到第三个或第四个孩子,有人点击“click_me”

注意:孩子是动态添加的。使用一些 ajax 函数调用/主宰推送通知。

<div class="messages" id="messages_212">
    <div class="message_container">
        <p><b>Sahil grover: </b>5</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>4</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>3</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>2</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>1</p> 
    <div>

    <div class="message_container">
        <p><b>Sahil grover: </b>0</p> 
    <div>
</div>

How to scroll down to a nth child of a div. Consider this code

 <span id="click_me">Click me to scroll down to nth child</span>

Messages div has 6 childs. I want to scroll down to 3rd or 4th child which somebody click on "click_me"

Note: Childs are added dynamically. Using some ajax functions calls/juggernaut push notifications.

<div class="messages" id="messages_212">
    <div class="message_container">
        <p><b>Sahil grover: </b>5</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>4</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>3</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>2</p> 
    <div>
    <div class="message_container">
        <p><b>Sahil grover: </b>1</p> 
    <div>

    <div class="message_container">
        <p><b>Sahil grover: </b>0</p> 
    <div>
</div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

白色秋天 2024-12-13 08:57:38

我不使用 jQuery(或任何框架),但用纯 JavaScript 很容易做到:

d = document.getElementById('messages_212');
d.scrollTop = d.children[2].offsetTop;
// children[2] for the third div, [3] for the fourth, etc.

I don't use jQuery (or any framework), but it's easy to do in plain JavaScript:

d = document.getElementById('messages_212');
d.scrollTop = d.children[2].offsetTop;
// children[2] for the third div, [3] for the fourth, etc.
合约呢 2024-12-13 08:57:38

使用 http://plugins.jquery.com/project/ScrollTo

插件主页和文档:< a href="http://flesler.blogspot.com/2007/10/jqueryscrollto.html" rel="nofollow">http://flesler.blogspot.com/2007/10/jqueryscrollto.html

//scroll to nth child
var child = 3;
$.scrollTo($(".message_container")[child]);

//scroll to nth child
var child = 3;
$.scrollTo("#messages_212:nth-child("+child+")");

use http://plugins.jquery.com/project/ScrollTo

plugin homepage and docs at: http://flesler.blogspot.com/2007/10/jqueryscrollto.html

//scroll to nth child
var child = 3;
$.scrollTo($(".message_container")[child]);

or

//scroll to nth child
var child = 3;
$.scrollTo("#messages_212:nth-child("+child+")");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文