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 相关文章推荐
js常见表单应用技巧
Jan 09 Javascript
jquery查找父元素、子元素(个人经验总结)
Apr 09 Javascript
PHP+jQuery实现随意拖动层并即时保存拖动位置
Apr 30 Javascript
Three.js学习之正交投影照相机
Aug 01 Javascript
bootstrap3 dialog 更强大、更灵活的模态框
Apr 20 Javascript
原生js实现简单的焦点图效果实例
Dec 14 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
Sep 13 Javascript
基于three.js实现的3D粒子动效实例代码
Apr 09 Javascript
Vue实现数据请求拦截
Oct 23 Javascript
mpvue 项目初始化及实现授权登录的实现方法
Jul 20 Javascript
Webpack5正式发布,有哪些新特性
Oct 12 Javascript
解决vue-router的beforeRouteUpdate不能触发
Apr 14 Vue.js
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
php生成html文件方法总结
2014/12/01 PHP
php实现学生管理系统
2020/03/21 PHP
PHP基于IMAP收取邮件的方法示例
2017/08/07 PHP
分享别人写的一个小型js框架
2007/08/13 Javascript
javascript css float属性的特殊写法
2008/11/13 Javascript
IE8 兼容性问题(属性名区分大小写)
2009/06/04 Javascript
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
javascript向flash swf文件传递参数值注意细节
2012/12/11 Javascript
ECMAScript6的新特性箭头函数(Arrow Function)详细介绍
2014/06/07 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
详解webpack 最简打包结果分析
2019/02/20 Javascript
vue项目中使用rem,在入口文件添加内容操作
2020/11/11 Javascript
如何在JavaScript中等分数组的实现
2020/12/13 Javascript
[03:00]2018完美盛典_最佳英雄奖
2018/12/17 DOTA
Python日期操作学习笔记
2008/10/07 Python
Python实现拷贝多个文件到同一目录的方法
2016/09/19 Python
Python使用pydub库对mp3与wav格式进行互转的方法
2019/01/10 Python
Python 写入训练日志文件并控制台输出解析
2019/08/13 Python
利用python在大量数据文件下删除某一行的例子
2019/08/21 Python
python中return如何写
2020/06/18 Python
matplotlib教程——强大的python作图工具库
2020/10/15 Python
Timex手表官网:美国运动休闲手表品牌
2017/01/28 全球购物
购买美国制造的相框和画框架:Picture Frames
2018/08/14 全球购物
简历中求职的个人自我评价
2013/12/03 职场文书
办公室秘书岗位职责范本
2014/02/11 职场文书
国际贸易专业个人职业生涯规划
2014/02/15 职场文书
2014年作风建设心得体会
2014/10/22 职场文书
党的群众路线教育实践活动个人对照检查材料(企业)
2014/11/05 职场文书
辞职信怎么写?
2019/05/21 职场文书
教你如何用python开发一款数字推盘小游戏
2021/04/14 Python
Python实现查询剪贴板自动匹配信息的思路详解
2021/07/09 Python
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android