javascript - data-id 单击时向下滚动到该项目

标签 javascript php html

我正在尝试添加项目数据 ID 当我点击它时 我正在尝试添加一个新项目,因为我需要使用 Class 和 id 我想做的一个例子

<a data-goto="#6">unint q</a>

当点击滚动到data-id="6"

<img src="https://mdajd.com/06/5b2s33.webp
    " loading="lazy" data-id="6" id="viewer" class="page">

因为我的项目有时需要200多张图片

所以我正在尝试添加快捷方式

是否有行动或解决方案的想法?谢谢

最佳答案

您可以使用 animate 轻松做到这一点带有 scrollTop 属性的方法。您可以增加/减少动画持续时间,目前它设置为 500。

$("a").click(function() {
  var gotoId = $(this).data('goto');
  $('html, body').animate({
    scrollTop: $("img[data-id='" + gotoId + "']").offset().top
  }, 500);
});
img {
  height: 200px;
  width: 200px;
  display: block;
  margin-bottom: 10px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <a href="#" data-goto="1">unint a</a>
  <a href="#" data-goto="2">unint b</a>
  <a href="#" data-goto="3">unint c</a>
  <a href="#" data-goto="4">unint d</a>
  <a href="#" data-goto="5">unint q</a>
</div>

unint a
<img src="https://dummyimage.com/600x400/ff0000/ffffff" loading="lazy" data-id="1" id="viewer" class="page"> 
unint b
<img src="https://dummyimage.com/600x400/ff0000/ffffff" loading="lazy" data-id="2" id="viewer" class="page"> 
unint c
<img src="https://dummyimage.com/600x400/ff0000/ffffff" loading="lazy" data-id="3" id="viewer" class="page"> 
unint d
<img src="https://dummyimage.com/600x400/ff0000/ffffff" loading="lazy" data-id="4" id="viewer" class="page"> 
unint q
<img src="https://dummyimage.com/600x400/ff0000/ffffff" loading="lazy" data-id="5" id="viewer" class="page">

关于javascript - data-id 单击时向下滚动到该项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59385086/

相关文章:

javascript - 使用 AngularJs 禁用文本框的剪切、复制和粘贴功能

javascript - 通过普通 JS 更改元素的索引(顺序)

javascript - 使用 *ngFor 时, Angular 事件绑定(bind)不起作用

php - SQL和PHP日期时间...最直接的方法

css - 在容器内拆分两个 div 相等

javascript - 如何在Hammer JS中触发 "press"事件

php - mysqli_num_rows()错误未返回字符串

php - 如何使用 api 向 wordpress 发帖?

php - 即使在经过验证的输入上,我是否需要检查 sql 注入(inject)?

javascript - iOS网络应用程序 "failed to parse response"