Jquery-滚动到数据id
Jquery - Scroll to data-id
我有一个div,它的数据参数'go'包含页面下方的div的id。例如:
<div data-go="help" data-info="">text</div>
目前,我可以使用以下代码跳转到div:
$("#icons > div").click(
function() {
input = $(this).data("go");
window.location.hash = input;
}
);
不过,我想要一个平滑的过渡(滚动到)
我尝试过调整各种堆叠式流量解决方案,但到目前为止运气不佳。
请参阅此JSFiddle:
JavaScript
$("#icons > div").click(
function() {
var id = $(this).data("go");
$(document.body).animate({scrollTop: $("#" + id).offset().top, duration: 400});
}
);
HTML
<div id="icons">
<div data-go="help" data-info="">text</div>
</div>
<div id="help">
<h1>
Help section
</h1>
</div>
获取目标元素的顶部偏移位置值,然后使用jQuery的animate函数为body
:的scrollTop属性设置动画
var input = $(this).data("go");
jQuery(document.body).animate({
scrollTop:jQuery("#"+input).offset().top+"px"
});
演示
$("#text").click(function() {
var input = $(this).data("go");
var top = jQuery("#"+input).offset().top;
jQuery(document.body).animate({
scrollTop:top+"px"
},1000);
});
#spacer {
height:1500px;
}
#help {
height:250px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="text" data-go="help" data-info="">text</div>
<div id="spacer"></div>
<div id="help">Help</div>
相关文章:
- 使用angularjs中的rest调用通过id获取数据
- tu如何将id放在填充了json数据的html表td上
- 为什么数据列表选项的id返回空值
- 使 ajax 请求和成功数据显示在 id <选择>选择>部分中
- 数据互绑定问题:转换器只运行一次,无法绑定元素的 ID
- 按 ID 存储关联数据
- asp.net 数据列表中的跟踪标签 ID
- 使用 JQuery 隐藏没有数据(包括标头)且具有相同表 ID 的列
- jquery没有't从DIV数据id中获取PHP变量值,只输出变量名
- 有没有办法用$('#id').uploadifive('upload');发送额外的数据
- 数据id是否违反关注点分离
- 对话框,数据选择器获取id
- 通过ID获取声明性dojo数据网格
- Xcode 从 WebView 解析 HTML ID 数据
- Richfaces:如何根据事件后返回的事件.rf.data来呈现id数据可用
- 无法使用平面UI选择框获取要显示的ID数据
- 如何从外部json文件中获取id数据,并在url中显示id号,当使用jQuery单击项目时
- 导航到具有与click元素的data-id数据属性相同的id的元素
- 我如何获得一个特定的Id数据从本地存储使用jquery编辑表单
- 如何通过单击JQuery按钮来提取id数据