我有一个javascript函数来计算一些东西,我需要启动它(调用函数)但同时我需要滚动到我有结果的位置。
我需要平滑滚动,所以我有一个单独的函数处理它。
我尝试了以下内容:
<button id="btn" onClick="calculate(); window.location='#results';">Calculate</button>
虽然它都计算AND滚动,但它不会激活我的平滑滚动功能,出于某种原因,只是硬/常规跳转到。
我使用此https://github.com/Yappli/smooth-scroll进行平滑滚动,将每个#link转换为平滑滚动。
我如何使这项工作?
我正在做这一切,没有jQuery,因为它需要超轻量级。
答案 0 :(得分:0)
您可以修改Smooth-Scroll,以便查找类而不是a
元素。
更改第19行:
links = document.getElementsByTagName('a'),
要:
links = document.getElementsByClassName('scroll-to'),
您可以同时执行这两项操作,但您需要合并两个HTMLCollection
,如下所示:
links = document.getElementsByTagName('a'),
classes = document.getElementsByClassName('scroll-to'),
links = [].concat(Array.prototype.slice.call(links), Array.prototype.slice.call(classes));