分享

jquery单行滚动、批量多行滚动、文字图片翻屏

 Blex 2012-02-14
一、单行转动

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transition al.dtd">

  <html xmlns="http://www./1999/xhtml">

  <head>

  <meta http-equiv="Content-Type" c />

  <title>jquery单行转动演示-山寨站长站-800home.cn</title>

  <style type="text/css">

  ul,li{margin:0;padding:0}

  #scrollDiv{width:300px;height:25px;line-height:25p x;border:#ccc 1px solid;overflow:hidden}

  #scrollDiv li{height:25px;padding-left:10px;}

  </style>

  <script src="http://www./demo/JQuery+API/jquery-1[1] .2.1.pack.js" type="text/javascript"></script>

  <script type="text/javascript">

  function AutoScroll(obj){

  $(obj).find("ul:first").animate({

  marginTop:"-25px"

  },500,function(){

  $(this).css({marginTop:"0px"}).find("li:first").ap pendTo(this);

  }); }

  $(document).ready(function(){

  setInterval('AutoScroll("#scrollDiv")',1000)

  });

  </script> </head> <body>

  <div id="scrollDiv"> <ul>

  <li>这是公-告标题的第一行</li>

  <li>这是公-告标题的第二行</li>

  <li>这是公-告标题的第三行</li>

  <li>这是公-告标题的第四行</li>

  <li>这是公-告标题的第五行</li>

  <li>这是公-告标题的第六行</li>

  <li>这是公-告标题的第七行</li>

  <li>这是公-告标题的第八行</li> </ul> </div>

  </body> </html>

  二、多行转动

   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transition al.dtd">

  <html xmlns="http://www./1999/xhtml">

  <head>

  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

  <title>jquery多行转动演示-山寨站长站-800home.cn</title>

  <style type="text/css">

  ul,li{margin:0;padding:0}

  #scrollDiv{width:300px;height:100px;min-height:25p x;line-height:25px;border:#ccc 1px solid;overflow:hidden}

  #scrollDiv li{height:25px;padding-left:10px;}

  </style>

  <script src="http://www./demo/JQuery+API/jquery-1[1] .2.1.pack.js" type="text/javascript"></script>

  <script type="text/javascript">

  //转动插件

  (function($){

  $.fn.extend({

  Scroll:function(opt,callback){

  //参数初始化

  if(!opt) var opt={};

  var _this=this.eq(0).find("ul:first");

  var lineH=_this.find("li:first").height(), //获取行高

  line=opt.line?parseInt(opt.line,10):parseInt(this.height() /lineH,10), //每次转动的行数,默以为一屏,即父容器高度

  speed=opt.speed?parseInt(opt.speed,10):500, //卷动速度,数值越大,速度越慢(毫秒)

  timer=opt.timer?parseInt(opt.timer,10):3000; //转动的工夫距离(毫秒)

  if(line==0) line=1;

  var upHeight=0-line*lineH;

  //转动函数

  scrollUp=function(){

  _this.animate({

  marginTop:upHeight

  },speed,function(){

  for(i=1;i<=line;i++){

  _this.find("li:first").appendTo(_this);

  }

  _this.css({marginTop:0});

  }); }

  //鼠标事情绑定

  _this.hover(function(){

  clearInterval(timerID);

  },function(){

  timerID=setInterval("scrollUp()",timer);

  }).mouseout();

  }

  })

  })(jQuery);

  $(document).ready(function(){

  $("#scrollDiv").Scroll({line:4,speed:500,timer:100 0});

  });

  </script> </head> <body>

  <p>多行转动演示:</p>

  <div id="scrollDiv"> <ul>

  <li>这是公-告标题的第一行</li>

  <li>这是公-告标题的第二行</li>

  <li>这是公-告标题的第三行</li>

  <li>这是公-告标题的第四行</li>

  <li>这是公-告标题的第五行</li>

  <li>这是公-告标题的第六行</li>

  <li>这是公-告标题的第七行</li>

  <li>这是公-告标题的第八行</li> </ul> </div>

  </body> </html>

  三、可掌握向前向后的多行转动

   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transition al.dtd">

  <html xmlns="http://www./1999/xhtml">

  <head>

  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

  <title>jquery单行转动演示-山寨站长站-800home.cn</title>

  <style type="text/css">

  ul,li{margin:0;padding:0}

  #scrollDiv{width:300px;height:100px;min-height:25p x;line-height:25px;border:#ccc 1px solid;overflow:hidden}

  #scrollDiv li{height:25px;padding-left:10px;}

  </style>

  <script src="http://www./demo/JQuery+API/jquery-1[1] .2.1.pack.js" type="text/javascript"></script>

  <script type="text/javascript">

  (function($){

  $.fn.extend({

  Scroll:function(opt,callback){

  //参数初始化

  if(!opt) var opt={};

  var _btnUp = $("#"+ opt.up);//Shawphy:向上按钮

  var _btnDown = $("#"+ opt.down);//Shawphy:向下按钮

  var timerID;

  var _this=this.eq(0).find("ul:first");

  var lineH=_this.find("li:first").height(), //获取行高

  line=opt.line?parseInt(opt.line,10):parseInt(this.height() /lineH,10), //每次转动的行数,默以为一屏,即父容器高度

  speed=opt.speed?parseInt(opt.speed,10):500; //卷动速度,数值越大,速度越慢(毫秒)

  timer=opt.timer //?parseInt(opt.timer,10):3000; //转动的工夫距离(毫秒)

  if(line==0) line=1;

  var upHeight=0-line*lineH;

  //转动函数

  var scrollUp=function(){

  _btnUp.unbind("click",scrollUp); //Shawphy:撤消向上按钮的函数绑定

  _this.animate({

  marginTop:upHeight

  },speed,function(){

  for(i=1;i<=line;i++){

  _this.find("li:first").appendTo(_this);

  }

  _this.css({marginTop:0});

  _btnUp.bind("click",scrollUp); //Shawphy:绑定向上按钮的点击事情

  }); }

  //Shawphy:向下翻页函数

  var scrollDown=function(){

  _btnDown.unbind("click",scrollDown);

  for(i=1;i<=line;i++){

  _this.find("li:last").show().prependTo(_this);

  }

  _this.css({marginTop:upHeight});

  _this.animate({

  marginTop:0

  },speed,function(){

  _btnDown.bind("click",scrollDown);

  }); }

  //Shawphy:主动播放

  var autoPlay = function(){

  if(timer)timerID = window.setInterval(scrollUp,timer);

  };

  var autoStop = function(){

  if(timer)window.clearInterval(timerID);

  };

  //鼠标事情绑定

  _this.hover(autoStop,autoPlay).mouseout();

  _btnUp.css("cursor","pointer").click( scrollUp ).hover(autoStop,autoPlay);//Shawphy:向上向下鼠标事情绑定

  _btnDown.css("cursor","pointer").click( scrollDown ).hover(autoStop,autoPlay);

  }

  })

  })(jQuery);

  $(document).ready(function(){

  $("#scrollDiv").Scroll({line:4,speed:500,timer:100 0,up:"btn1",down:"btn2"});

  });

  </script> </head> <body>

  <p>多行转动演示:</p>

  <div id="scrollDiv"> <ul>

  <li>这是公-告标题的第一行</li>

  <li>这是公-告标题的第二行</li>

  <li>这是公-告标题的第三行</li>

  <li>这是公-告标题的第四行</li>

  <li>这是公-告标题的第五行</li>

  <li>这是公-告标题的第六行</li>

  <li>这是公-告标题的第七行</li>

  <li>这是公-告标题的第八行</li> </ul> </div>

  <span id="btn1">向前</span>  <span id="btn2">向后</span>

  </body> </html>

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约