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 相关文章推荐
javascript 闭包
Sep 15 Javascript
js 使用form表单select类实现级联菜单效果
Dec 19 Javascript
Extjs Gird 支持中文拼音排序实现代码
Apr 15 Javascript
调用jQuery滑出效果时闪烁的解决方法
Mar 27 Javascript
Javascript WebSocket使用实例介绍(简明入门教程)
Apr 16 Javascript
js实现多选项切换导航菜单的方法
Feb 06 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
Jun 24 Javascript
手机端转盘抽奖代码分享
Sep 10 Javascript
JS与jQ读取xml文件的方法
Dec 08 Javascript
在页面中输出当前客户端时间javascript实例代码
Mar 02 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
js断点调试心得分享(必看篇)
Dec 08 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
用PHP将网址字符串转换成超链接(网址或email)
2010/05/25 PHP
使用JSON实现数据的跨域传输的php代码
2011/12/20 PHP
php中调用其他系统http接口的方法说明
2014/02/28 PHP
php读取csv数据保存到数组的方法
2015/01/03 PHP
浅谈PHP定义命令空间的几个注意点(推荐)
2016/10/29 PHP
PHP+Mysql无刷新问答评论系统(源码)
2016/12/20 PHP
JavaScript 格式字符串的应用
2010/03/29 Javascript
JavaScript中判断整数的多种方法总结
2014/11/08 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
2015/03/03 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
浅析 NodeJs 的几种文件路径
2017/06/07 NodeJs
js canvas实现放大镜查看图片功能
2017/06/08 Javascript
EasyUI创建人员树的实例代码
2017/09/15 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
详解Vue中watch的详细用法
2018/11/28 Javascript
微信小程序收货地址API兼容低版本解决方法
2019/05/18 Javascript
vue将后台数据时间戳转换成日期格式
2019/07/31 Javascript
jQuery利用cookie 实现本地收藏功能(不重复无需多次命名)
2019/11/07 jQuery
vue中路由跳转不计入history的操作
2020/09/21 Javascript
vue 单页应用和多页应用的优劣
2020/10/22 Javascript
[22:07]DOTA2-DPC中国联赛 正赛 iG vs Magma 选手采访
2021/03/11 DOTA
Python实现windows下模拟按键和鼠标点击的方法
2015/03/13 Python
Python简单处理坐标排序问题示例
2019/07/11 Python
Python优秀开源项目Rich源码解析的流程分析
2020/07/06 Python
精灵市场:Pixie Market
2019/06/18 全球购物
升职自荐信
2013/11/28 职场文书
产品销售员岗位职责
2013/12/18 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
售后服务承诺书怎么写
2014/05/21 职场文书
英语课前三分钟演讲稿(6篇)
2014/09/13 职场文书
大学生心理健康教育心得体会
2016/01/12 职场文书
JS ES6异步解决方案
2021/04/29 Javascript
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android