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 相关文章推荐
onsubmit阻止form表单提交与onclick的相关操作
Sep 03 Javascript
简单的两种Extjs formpanel加载数据的方式
Nov 09 Javascript
javascript计算当月剩余天数(天数计算器)示例代码
Jan 09 Javascript
js判断字符长度及中英文数字等
Mar 19 Javascript
JavaScript实现的链表数据结构实例
Apr 02 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
Jun 10 Javascript
jquery实现删除一个元素后面的所有元素功能
Dec 21 Javascript
基于javascript实现数字英文验证码
Jan 25 Javascript
jsTree事件和交互以及插件plugins详解
Aug 29 Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 Javascript
vue中promise的使用及异步请求数据的方法
Nov 08 Javascript
JS在Array数组中按指定位置删除或添加元素对象方法示例
Nov 19 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
全国FM电台频率大全 - 24 贵州省
2020/03/11 无线电
php模板原理讲解
2013/11/13 PHP
zf框架的校验器InArray使用示例
2014/03/13 PHP
php实例分享之二维数组排序
2014/05/15 PHP
thinkPHP简单实现多个子查询语句的方法
2016/12/05 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
php输出文字乱码的解决方法
2019/10/04 PHP
gridpanel动态加载数据的实例代码
2013/07/18 Javascript
javascript查询字符串参数的方法
2015/01/28 Javascript
基于JavaScript实现Json数据根据某个字段进行排序
2015/11/24 Javascript
JavaScript基础知识点归纳(推荐)
2016/07/09 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
实例分析编写vue组件方法
2019/02/12 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
vue中在vuex的actions中请求数据实例
2019/11/08 Javascript
javascript数组的定义及操作实例
2019/11/10 Javascript
小程序使用wxs解决wxml保留2位小数问题
2019/12/13 Javascript
javascript实现评分功能
2020/06/24 Javascript
如何使用 vue-cli 创建模板项目
2020/11/19 Vue.js
Python 实现购物商城,含有用户入口和商家入口的示例
2017/09/15 Python
python实现两个文件合并功能
2018/04/01 Python
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
python实现中文文本分句的例子
2019/07/15 Python
Html5剪切板功能的实现代码
2018/06/29 HTML / CSS
BIFFI美国站:意大利BIFFI BOUTIQUES豪华多品牌时装零售公司
2020/02/11 全球购物
澳大利亚领先的女性运动服品牌:Lorna Jane
2020/06/19 全球购物
医药工作者的求职信范文
2013/09/21 职场文书
党员自我评价分享
2013/12/13 职场文书
三八妇女节活动主持词
2014/03/17 职场文书
支部鉴定材料
2014/06/02 职场文书
社会实践活动总结范文
2014/07/03 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
什么是Python装饰器?如何定义和使用?
2022/04/11 Python
利用正则表达式匹配浮点型数据
2022/05/30 Java/Android