Javascript 鼠标移动上去 滑块跟随效果代码分享


Posted in Javascript onNovember 23, 2013

先来一张截图。

Javascript 鼠标移动上去 滑块跟随效果代码分享

鼠标移动到对应的分类,下面的红色小三角形就会自动跟随,缓慢的跟随。
不管有多少个都可以。
javascript code:

function changeCoord(id, left) {
 $$(id).style.left = left;
}
function $$(id) {
 return document.getElementById(id);
}
function $$$(id) {
 return document.getElementsByClassName(id)[0];
}
function indexOf(arry, obj) {
 for (var i = 0; i < arry.length; i++) {
  if (obj == arry[i]) {
   return i;
  }
 };
}
window.onload = function() {
 //给页面上所有的滑块注册事件
 //products-box-center 父容器对象
  var obj = document.getElementsByClassName('products-box-center');
  for(var i=0;i<obj.length;i++){
   try{
   var base=obj[i].getElementsByClassName('products-box-center-title')[0]; //取得每一项标题
   var elems=base.getElementsByClassName('products-items-title');
    for(var j=0;j<elems.length;j++){
     var elem=elems[j];
     elem.onmousemove=function(){
      //获得当前对象的父容器的父容器
      var baseElem=this.parentElement.parentElement;
      var baseIndex=indexOf(obj,baseElem)+1;
      //获得当前对象的坐标
      var left = this.offsetLeft;
      //获得对应的滑块对象
      var slider=$$('products-triangle-'+baseIndex);
      //改变滑块的坐标
      slider.style.left = left + "px";
      //改变当前对象和其他对象的颜色
      this.style.color = "red";
      //获取当前父容器下面的所有元素
      var notes=this.parentElement.getElementsByClassName('products-items-title');
      for(var k=0;k<notes.length;k++){
       if(this!=notes[k])
       notes[k].style.color="#666";
      }
     };
    }
   }
   catch(e){
    alert(e);
   }
  };
}

html code:

 <div class="products-box-center">
    <div class="products-box-center-title">
     <div class="products-items-title products-focus-text"><h3>最新商品</h3></div>
     <div class="products-items-title"><h3>笔记本</h3></div>
     <div class="products-items-title"><h3>数码影音</h3></div>
     <div class="products-items-title"><h3>配件</h3></div>
     <div class="products-items-title"><h3>办公打印</h3></div>
     <div class="products-bottom-triangle" id="products-triangle-${index.count}"><b class="triangle"></b></div>
    </div>    <div class="products-box-panel">
      <div class="products-item">
       <ul>
        <c:forEach begin="1" end="10">
         <li>
          <a href="#"><img src="img/pc.jpg"/></a>
          <div class="p-name">
           <a href="#">LG IPS237L-BN 23英寸IPS显示器</a>
          </div>
          <div class="p-price">
           <span>¥1299.00</span>
          </div>
         </li>
        </c:forEach>
       </ul>
      </div>
    </div>
   </div>

上面的html是部分,可以用el表达式循环下,多搞几个。。。
一个上午才做好。。。

Javascript 相关文章推荐
解决FireFox下[使用event很麻烦]的问题
Nov 26 Javascript
javascript 控制弹出窗口
Apr 10 Javascript
在javascript将NodeList作为Array数组处理的方法
Jul 09 Javascript
利用jQuery的deferred对象实现异步按顺序加载JS文件
Mar 17 Javascript
用JQuery 判断某个属性是否存在hasAttr的解决方法
Apr 26 Javascript
用Js实现的动态增加表格示例自己写的
Oct 21 Javascript
js在IE与firefox的差异集锦
Nov 11 Javascript
jquery实现右键菜单插件
Mar 29 Javascript
AngularJs自定义服务之实现签名和加密
Aug 02 Javascript
简单谈谈原生js的math对象
Jun 27 Javascript
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
Mar 01 Javascript
在Vue methods中调用filters里的过滤器实例
Aug 30 Javascript
jquery实现图片滚动效果的简单实例
Nov 23 #Javascript
js图片向右一张张滚动效果实例代码
Nov 23 #Javascript
JavaScript实现简单的时钟实例代码
Nov 23 #Javascript
JS控制日期显示的小例子
Nov 23 #Javascript
Jquery 动态循环输出表格具体方法
Nov 23 #Javascript
基于jquery异步传输json数据格式实例代码
Nov 23 #Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
Nov 23 #Javascript
You might like
smarty静态实验表明,网络上是错的~呵呵
2006/11/25 PHP
JS实现php的伪分页
2008/05/25 PHP
PHP5中虚函数的实现方法分享
2011/04/20 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
jQuery动画animate方法使用介绍
2013/05/06 Javascript
jQuery中add()方法用法实例
2015/01/08 Javascript
nodejs爬虫抓取数据之编码问题
2015/07/03 NodeJs
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
浅析js中substring和substr的方法
2015/11/09 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
2016/06/21 Javascript
JavaScript组合模式学习要点
2016/08/26 Javascript
给easyui的datebox控件添加清空按钮的实现方法
2016/11/09 Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
2017/07/13 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
Vue.js 事件修饰符的使用教程
2018/11/01 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
js实现无缝滚动双图切换效果
2019/07/09 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
火车票抢票python代码公开揭秘!
2018/03/08 Python
tensorflow: variable的值与variable.read_value()的值区别详解
2018/07/30 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
Python3变量与基本数据类型用法实例分析
2020/02/14 Python
Python如何在windows环境安装pip及rarfile
2020/06/15 Python
记一次Django响应超慢的解决过程
2020/09/17 Python
意大利珠宝店:Luxury Zone
2019/01/05 全球购物
企业面试题试卷附带答案
2015/12/20 面试题
大学本科生的个人自我评价
2013/12/09 职场文书
运动会班级口号
2014/06/09 职场文书
食品质检员岗位职责
2015/04/08 职场文书
自荐信大全
2019/03/21 职场文书
试了下Golang实现try catch的方法
2021/07/01 Golang