javascript-如何在不使整个浏览器跳下来的情况下在可滚动div中定位锚标记?

我正在为客户的大型项目构建一个简单的词汇表小部件.词汇表的内容包含在可滚动的div中(溢出:自动).每个字母都有一个与之关联的锚标记(#a,#b,#c等).可滚动div上方是一个div,其中包含字母表中的每个字母.单击这些字母之一可将用户带到可滚动div中该字母的定义.这是可行的,但意外的副作用是整个窗口会跳到锚点,这会使用户感到困惑和烦恼.

这是一个小部件,经过了简化,并带有一堆< br /&gt ;,让您明白我的意思. http://www.nitrohandsome.com/clients/topics/glossary-widget/

我尝试了一些通过Googling拼凑而成的不同javascript想法,但是没有任何效果,所以我摆脱了所有东西,除了实际的锚定代码(我是一个相当大的JS新手).因此,现在,单击任意字母即可执行此javascript函数,并将锚标记传递给它:

    function jumpToAnchor(myAnchor) {
   window.location = String(window.location).replace(/\#.*$/, "") + myAnchor;
  }

我如何才能做到这一点,以便每次单击链接时整个窗口都不会跳转?

提前致谢!

解决方法:

如果您使用的是jQuery,则可以尝试使用scrollTo插件.另外,仅编辑哈希部分或URL,您可以

function jumpToAnchor(myAnchor) {
   window.location.hash = myAnchor;
}
上一篇:FCOS单阶段anchor-free算法阅读总结


下一篇:C#窗体放大时,子控件无改变且仍处于居中显示的实现