时间:2021-05-18
如下所示:
export default { inserted: function(el, binding) { el.onclick = function() { let total; if (binding.value == 0) { total = 0; } else { total = document.getElementById(`anchor-${binding.value}`).offsetTop; } let distance = document.documentElement.scrollTop || document.body.scrollTop; let step = total / 50; if (total > distance) { (function smoothDown() { if (distance < total) { distance += step; document.documentElement.scrollTop = distance; setTimeout(smoothDown, 5); } else { document.documentElement.scrollTop = total; } })(); } else { let newTotal = distance - total; step = newTotal / 50; (function smoothUp() { if (distance > total) { distance -= step; document.documentElement.scrollTop = distance; setTimeout(smoothUp, 5); } else { document.documentElement.scrollTop = total; } })(); } } }}1、封装一个anchor.js
2、在入口文件中定义
//定义锚点跳转 Vue.directive(‘anchor', anchorFunc);3、页面中使用方式
v-anchor = “传入的value”使用例子:
以上这篇浅谈vue 锚点指令v-anchor的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
复制代码代码如下: 用Javascript实现锚点(Anchor)间平滑跳转 //说明:用Javascript实现锚点(Anchor)间平滑跳转
本文实例讲述了vue自定义指令的创建和使用方法。分享给大家供大家参考,具体如下:一、自定义指令的创建和使用Vue自带的指令很多,v-for/v-if/v-els
1、什么是指令?指令通常以"v-"作为前缀,以方便Vue知道你在使用一种特殊的标记。除了Vue核心携带着的一些默认指令(v-model和v-show)之外,Vu
本文实例讲述了jQuery实现平滑滚动到指定锚点的方法。分享给大家供大家参考。具体如下:定义好指定的anchor锚点,调用下面的js代码可以让页面平滑的滚动到指
一、v-bind初探它是一个vue指令,用于绑定html属性,如下:html属性不能使用双大括号形式绑定,只能使用v-bind指令......varvm=new