如何不使用 a 标签实现页面内跳转?

如何不使用 a 标签实现页面内跳转?

如何不使用 标签实现在页面中跳转位置?

问题描述:

页面代码中存在 .item 元素,需要通过为其增加 href 属性来实现跳转位置。

解答:

JavaScript 解决方案:

  1. 定义一个跳转锚点函数,该函数接受目标位置的 ID 作为参数,使用 scrollIntoView() 方法滚动到该位置。
  2. 在 .item 元素上绑定点击事件侦听器,当用户点击该元素时,调用锚点函数。
  3. 动态生成一个带有 href 属性的 .item 元素的列表,每个元素对应一个跳转位置。

代码示例:

<script>
  function test(href) {
    const id = href.replace('#', '');
    document.getElementById(id).scrollIntoView();
  }

  let liEle = '';
  for (data of partDynamicDataTraverse.list) {
    liEle += `<li onclick="test('${data.href}')"><div class="item">${data.name}`;
  }
  partDynamicDataTraverse.$element.append(liEle);
</script>

最终效果:

点击 .item 元素后,页面滚动到相应目标位置。

以上就是如何不使用 a 标签实现页面内跳转?的详细内容,更多请关注其它相关文章!