javascript - jquery div滚动问题

标签 javascript jquery

我有一个页面需要多个具有相同类名的 div。在每个 div 中都有我想通过 Controller 滚动的文本。

我想不出如何让每个 div 中的 Controller 仅滚动其特定 div 中的文本,而不是页面上共享同一类的每个 div 中的文本。每个 div 看起来像这样:

<div class="box-wrap"> 
    <div class="box"> Text that will be scrolled </div> 
    <div class="controllers"> 
        <div class="button1"> Scroll Up </div> 
        <div class="button2"> Scroll Down </div> 
    </div> 

使用下面的代码一切正常,但每个 div 中的按钮将导致页面上的每个 div 滚动:

$(".button1").click(function(){
  $(".block").animate({"top": "-=50px"}, "slow");
});


$(".button2").click(function(){
  $(".block").animate({"top": "+=50px"}, "slow");
});

将代码更改为 $(".block", this).animate({"top": "+=50px"}, "slow");使其完全停止工作。

有什么想法吗?

最佳答案

首先,您的示例代码中没有 .block 类。假设您的意思是 .box,您可以使用 parent()prev()方法:

$(this).parent(".controllers").prev(".box").animate({"top": "+=50px"}, "slow");

关于javascript - jquery div滚动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5309404/

相关文章:

javascript - 如何在 asp.net 中使用 Angular 选项卡返回上一页

javascript - 为 setTimeout 创建循环

javascript - 如何在Spring中将JSP页面上的AJAX JQuery制作为 Controller ?

jquery - 使用 Jquery 查找 DOM 中的元素并删除

jquery - combobox.ui Jquery 在焦点上启动自动完成功能

javascript - 添加后,从下拉菜单中删除一个值并显示下一个值,删除后,再次将删除的值添加到下拉菜单中

javascript - 将 JavaScript 对象转换为 HTML

javascript - 将选择选项设置回默认选中

javascript - 使用函数删除输入数据

javascript - 云函数速率限制器,不返回数据