咳咳&#xff01;先打一波小广告&#xff0c;在上一篇里忘记了&#xff0c;那啥……我的那个个人博客做好了-->(我的博客)<--。嘿嘿
好嘞&#xff0c;言归正传&#xff0c;说说我们的效果。
其实就是实现横向滑动&#xff0c;进行选择。
原理&#xff1a;
- 鼠标按下&#xff0c;获取当前鼠标坐标&#xff0c;作为起始坐标&#xff1b;
- 鼠标移动&#xff0c;获取坐标&#xff0c;与起始坐标进行一系列的数学运算&#xff1b;
- 给 left 赋值&#xff0c;改变位置&#xff1b;
- 移动过多&#xff0c;超过时进行处理。
function scrollTabX() {let nav &#61; document.getElementById("nav");let navs &#61; document.getElementsByTagName("li");let navbar &#61; document.getElementsByClassName("navbar")[0];let left &#61; nav.style.left; // ul 距离左边的距离let totalWidth &#61; 0; // 总宽度let minusValue &#61; 0; // 设备宽度与总宽度的差值
left &#61; left ? left : 0; // 初始时 ul 距离左边 0px// 获取所有 li 所占用的宽度for (let i &#61; 0; i
clearInterval(timer);}nav.style.left &#61; left &#43; &#39;px&#39;;}, 20);}// 去掉阴影navbar.style.boxShadow &#61; (left <&#61; minusValue) ? "0 0 0 #fff" : "-5px 0 10px #fff inset";}})();}
}
效果图&#xff08;动图不会哎&#xff09;&#xff1a;
反正想像一下效果就好了&#xff0c;哈哈。
至于说这篇写的不怎么样&#xff0c;我为什么还要置顶&#xff1f;……当然是因为我的博客啦&#xff01;