jQuery+css3实现文字跟随鼠标的上下抖动


Posted in Javascript onJuly 31, 2015

css3过渡属性结合jq,如果直接复制代码运行,需要加载一个jquery文件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>m</title>
</head>
<style>
/* CSS 预设*/
*{ margin:0; padding:0;}
a{ text-decoration:none;}
img{ border:none;}
ul{ list-style:none;}
body{ color:#222121; font-size:12px; font-family:"宋体"; background-color:#fefefe}
.clearfix:after{ content:"."; display:block; height:0; clear:both; overflow:hidden;}
.clearfix{ zoom:1;}
/*clear*/
.left{float:left;}
.right{float:right;}
.clear{clear:both;}
/*demo4*/
.demo{ margin:0 50px;}
.hover-list{ line-height:40px; width:500px;}
.hover-list li{ height:40px; border-bottom:1px solid #969; position:relative;}
.hover-list li a span{ width:12px; height:40px;cursor:pointer;transition:all .1s cubic-bezier(.06,1.15,1,1.4) 0s;}
.hover-list li a{ color:#39F; cursor:pointer;}
</style>
<body>
<div class="demo">
  <div class="wrapper box-con">    
    <ul class="hover-list">
      <li><a href="http://www.miaov.com/2013/#" target="_blank">我们内地,大红撒谎道夫们内地道夫们内地</a></li>
      <li><a href="#2">方法我阿道道夫们内地夫们内大红撒谎道夫们内地道夫们内地地,大红撒谎</a></li>
      <li><a href="#2">是我们内地,道夫们内地大红撒谎</a></li>
      <li><a href="#2">大红撒方法我阿道道夫们内地夫们内大红撒谎道夫们内地道夫们内地地谎</a></li>
      <li><a href="#2">我们内地,大红撒谎道夫们内地道夫们内地</a></li>
      <li><a href="#2">方法我阿道道夫们内地夫们内大红撒谎道夫们内地道夫们内地地,大红撒谎</a></li>
      <li><a href="#2">是我们内地,道夫们内地大红撒谎</a></li>
    </ul>
  </div>
</body>
<script src="js/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(function(){
 
//demo
  //可以变化的参数
  var setccid=$(".hover-list");//设置ul的class,添加效果
  var setleft=12;//设置字与字之间的left值
  var setskip=10;//设置上下抖动值
   
  var hov=setccid.children("li");
  for(var i=0;i<hov.length;i++){
    var hovtext=hov.eq(i).find("a").html();
    var hovtextl=hovtext.length;
    //alert(hovtextl)
    var hovtexta=hovtext.split("");
    var arrys=[];
    for(var j=0;j<hovtexta.length;j++){
      arrys.push(hovtexta[j].replace(hovtexta[j],"<span>"+hovtexta[j]+"</span>"))
    };
    hov.eq(i).find("a").html(arrys);
    var hovtextspan=hov.eq(i).find("a").find("span").length;
    for(var z=0;z<hovtextspan;z++){
      hov.eq(i).find("a").find("span").eq(z).css({position:"absolute",top:"0px"});
      hov.eq(i).find("a").find("span").eq(z).css('left',z*setleft);
    }
  };
   
  setccid.children("li").find("a").children("span").hover(function(event){
    var sppz=$(this).index();
    var sppzp=$(this).parent().children("span");
    var sppzpl=$(this).parent().children("span").length;
    var sppy=$(this).offset().top;
    var ey=event.pageY;
    var chay=sppy+$(this).height()/2;
    var sppcony=$(this).position().top; 
    if(ey>=chay) {
      $(this).css('top',sppcony+setskip);
      var lla=sppcony+setskip;
      var lll=lla;
      var llr=lla;
      var teshu=(sppz-lla)>0?sppz-lla:0;    
      for(var xx=sppz+1;xx<=sppz+lla;xx++){
        llr=llr-1;
        sppzp.eq(xx).css('top',llr);   
      };
      for(var x=sppz-1;x>=teshu;x--){
        lll=lll-1;
        sppzp.eq(x).css('top',lll); 
      }; 
    }else{
      $(this).css('top',sppcony-setskip);
      var lla=sppcony-setskip;
      var lll=lla;
      var llr=lla;
      var teshu=(sppz+lla)>0?sppz+lla:0;
      for(var xxxx=sppz+1;xxxx<=sppz-lla;xxxx++){
        llr=llr+1;
        sppzp.eq(xxxx).css('top',llr);
      }; 
      for(var xxx=sppz-1;xxx>=teshu;xxx--){
        lll=lll+1;
        sppzp.eq(xxx).css('top',lll);
      };           
    }    
  },function(event){
    $(this).css('top',"0px");
    $(this).parent().children("span").css('top',"0px");
  });
//end    
});
</script>
</html>

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
js对文章内容进行分页示例代码
Mar 05 Javascript
javascript操纵OGNL标签示例代码
Jun 16 Javascript
jQuery标签替换函数replaceWith()的使用例子
Aug 28 Javascript
node.js中的fs.readSync方法使用说明
Dec 17 Javascript
快速学习jQuery插件 Cookie插件使用方法
Dec 01 Javascript
Dojo获取下拉框的文本和值实例代码
May 27 Javascript
基于JavaScript实现的折半查找算法示例
Apr 14 Javascript
深入理解ES6的迭代器与生成器
Aug 19 Javascript
VSCode配置react开发环境的步骤
Dec 27 Javascript
React 组件转 Vue 组件的命令写法
Feb 28 Javascript
35个最好用的Vue开源库(史上最全)
Jan 03 Javascript
详解JS WebSocket断开原因和心跳机制
May 07 Javascript
JavaScript实现图片轮播的方法
Jul 31 #Javascript
基于bootstrap3和jquery的分页插件
Jul 31 #Javascript
jquery-tips悬浮提示插件分享
Jul 31 #Javascript
javascript实现检验的各种规则
Jul 31 #Javascript
纯JS实现本地图片预览的方法
Jul 31 #Javascript
javascript动画算法实例分析
Jul 31 #Javascript
jquery实现手机号码选号的方法
Jul 31 #Javascript
You might like
实用函数7
2007/11/08 PHP
php获取当前时间的毫秒数的方法
2014/01/26 PHP
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
2017/02/28 PHP
js获取url参数的使用扩展实例
2007/12/29 Javascript
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
IE6下通过a标签点击切换图片的问题
2010/11/14 Javascript
location对象的属性和方法应用(解析URL)
2013/04/12 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
2016/06/09 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
2016/08/24 Javascript
JavaScript获取URL中参数querystring的方法详解
2016/10/11 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
使用Node.js实现简易MVC框架的方法
2017/08/07 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
vue excel上传预览和table内容下载到excel文件中
2019/12/10 Javascript
python 中的列表解析和生成表达式
2011/03/10 Python
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
2015/03/06 Python
Python操作MongoDB数据库的方法示例
2018/01/04 Python
python抓取文件夹的所有文件
2018/02/27 Python
ubuntu17.4下为python和python3装上pip的方法
2018/06/12 Python
基于python 微信小程序之获取已存在模板消息列表
2019/08/05 Python
python django生成迁移文件的实例
2019/08/31 Python
Python生成器实现简单&quot;生产者消费者&quot;模型代码实例
2020/03/27 Python
接口中的方法可以是abstract的吗
2015/07/23 面试题
活动策划邀请函
2014/02/06 职场文书
药剂专业求职信
2014/06/20 职场文书
项目申请汇报材料
2014/08/16 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
教师批评与自我批评范文
2014/10/15 职场文书
司机岗位职责
2015/02/04 职场文书
2015年社区党务工作总结
2015/04/21 职场文书
结婚堵门保证书
2015/05/08 职场文书
2015年基层党建工作总结
2015/05/14 职场文书
功夫熊猫观后感
2015/06/10 职场文书
2019新员工心得体会
2019/06/25 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书