当前位置: 首页 > news >正文

网页上本地网站搜索怎样做品牌推广的具体方法

网页上本地网站搜索怎样做,品牌推广的具体方法,如何建立自己的网站教程,网址之家大全1、vue3 闭包滚动函数的使用 js 调用也基本雷同 // 滚动Tab组件const scoreTabRef ref()// 滚动的选项const scrollOption ref({// 滚动的Dom元素scrollDom: null,// 滚动的时间间隔scrollInterval: 1500,// 滚动的距离scrollSep: 100,// 滚动历时时间scrollDuration: 10…

1、vue3 闭包滚动函数的使用

js 调用也基本雷同

//  滚动Tab组件const scoreTabRef = ref()//  滚动的选项const scrollOption = ref({// 滚动的Dom元素scrollDom: null,// 滚动的时间间隔scrollInterval: 1500,// 滚动的距离scrollSep: 100,// 滚动历时时间scrollDuration: 1000})const autoScroll = ref()onMounted(() => {// 初始化,获取某个组件的滚动的dom元素(设置了高度的div)scrollOption.value.scrollDom = scoreTabRef.value.$el.querySelector('.v-table__wrapper')// 闭包函数,传输滚定的选项autoScroll.value = tool.autoScroll(scrollOption.value)// 执行闭包函数的滚动方法autoScroll.value.startScroll()})onUnmounted(() => {// 销毁页面,也销毁闭包内的定时器autoScroll.value.destoryScroll()})

vue3各组件内互不影响

在这里插入图片描述

2 定义 tool.js 的平滑滚动闭包函数

闭包函数仅需关心参数

export const tool = {// 自动滚动闭包函数autoScroll: (scrollOptionParam) => {// 滚动选项let scrollOption = Object.assign({// 滚动的Dom元素scrollDom: null,// 滚动的时间间隔scrollInterval: 1500,// 滚动的距离scrollSep: 50,// 滚动历时时间scrollDuration: 1000},scrollOptionParam)// 滚动临时结果let scrollResult = {scrollTimer: null,pauseTimer: null}// 实际滚动方法const scrollFun = () => {// 如果定时器存在if (scrollResult.scrollTimer) {// 则先清除clearInterval(scrollResult.scrollTimer)scrollResult.scrollTimer = null}scrollResult.scrollTimer = setInterval(() => {// 获取当前滚动条距离顶部高度const scrollTop = scrollOption.scrollDom.scrollTopconst temp = scrollTop + scrollOption.scrollSepsmoothScroll(scrollOption.scrollDom, temp, scrollOption.scrollDuration)}, scrollOption.scrollInterval)}// 平滑滚动效果const smoothScroll = (element, targetY, duration) => {const startY = element.scrollTopconst distance = targetY - startYconst startTime = performance.now()const scrollHeight = element.scrollHeightconst clientHeight = element.clientHeightconst canScroll = scrollHeight - clientHeightfunction scroll(currentTime) {const elapsed = currentTime - startTimeconst progress = Math.min(elapsed / duration, 1)const easeProgress = progress * (2 - progress)const currentY = startY + distance * easeProgresselement.scrollTop = currentY// 如果已经达到目标位置或者达到持续时间,停止动画if (progress < 1 && Math.abs(currentY - targetY) > 1) {requestAnimationFrame(scroll)} else {element.scrollTop = targetY // 确保最终位置}// 距离顶部高度  大于等于 滚动长度if (canScroll <= targetY) {// 滚动到底部 停止定时器clearInterval(scrollResult.scrollTimer)scrollResult.scrollTimer = nullscrollOption.scrollDom.scrollTop = 0// 一秒后重开定时器setTimeout(() => {scrollFun()}, 1000)}}requestAnimationFrame(scroll)}const pauseScroll = () => {// 定时器不为空if (scrollResult.scrollTimer) {// 清除定时器clearInterval(scrollResult.scrollTimer)scrollResult.scrollTimer = null// 一秒钟后重新开始定时器scrollResult.pauseTimer = setTimeout(() => {scrollFun()}, 2000)}}return {startScroll: () => {const scrollHeight = scrollOption.scrollDom.scrollHeightconst clientHeight = scrollOption.scrollDom.clientHeightconst scroll = scrollHeight - clientHeight// 滚动长度为0,则无法实现自动滚动if (scroll === 0) {return}// 触发滚动方法scrollFun()// 去除点击监听scrollOption.scrollDom.removeEventListener('click', pauseScroll)// 重设点击监听scrollOption.scrollDom.addEventListener('click', pauseScroll, false)},destoryScroll: () => {// 清理定时器clearTimeout(scrollResult.pauseTimer)scrollResult.pauseTimer = nullclearInterval(scrollResult.scrollTimer)scrollResult.scrollTimer = null// 清理点击监听scrollOption.scrollDom.removeEventListener('click', pauseScroll)}}}
}
http://www.zhongyajixie.com/news/45747.html

相关文章:

  • 福州网站设计外包seo页面代码优化
  • 深圳网站建设服务找哪家论坛平台
  • dedecms网站邮件程序有友情链接的网站
  • 做程序员招聘的网站写文章在哪里发表挣钱
  • 化州网站建设站长工具名称查网站
  • 建行网站是多少呢石家庄网站建设就找
  • 网站建设前端工程师岗位职责关于校园推广的软文
  • 一般网站海报做一张多久杭州今天查出多少阳性
  • 潢川微信网站建设seo优化服务是什么意思
  • 新手做网站需要哪些教材济南百度代理
  • centos7.2做网站相城seo网站优化软件
  • 电商网站建设机构平台推广
  • 那个网站是做副食批发怎么联系百度人工服务
  • 网站建设优劣势分析谷歌关键词查询工具
  • 好的网站建设专业公司优化大师哪个好
  • 织梦网站装修公司源码网络公司seo教程
  • 湖南省金力电力建设有限公司 网站全球疫情最新数据
  • 服务器上发布网站培训网站推广
  • 做淘宝网站怎么弄的网络推广公司口碑
  • 建设银行信用卡中心网站营销软件培训
  • 有人做网站吗名优网站关键词优化
  • 给国外网站做流量做推广的公司
  • 浙江省建设局城市平台网站今天的新闻摘抄
  • 南宁如何做百度的网站友情链接购买平台
  • 做图片网站用什么程序百度最新秒收录方法2023
  • 山东省建设厅网站地址电商运营怎么做如何从零开始
  • 时尚手表网站今天今日新闻头条最新消息
  • 无锡市网站设计nba交易最新消息
  • web购物网站如何做百度入驻
  • 企业如何建自己的网站西安市网站