利用JQuery一步步打造无缝滚动新闻

    首先,我们这里有这么一段html代码,很简洁,如下所示:

1  < div  id ="tag" >
2  < ul >
3  < li > 你说我是好人吗,我是好人啊 </ li >
4  < li > 哈哈,我真的不知道说什么了 </ li >
5  < li > 生活就是应该平淡的 </ li >
6  < li > 像上学一样的工作 </ li >
7  </ ul >
8  </ div >

 

   然后我们要做的就是使它无缝滚动。

首先我们引入进入JQuery,并且获取到li元素列表中的第一个元素中的内容

这里我们使用的是clone()方法来获取,然后显示其内容:

ExpandedBlockStart.gif 代码
1  < script type = " text/javascript "  src = " jquery-1.3.2.min.js " >< / script>
2  < script type = " text/javascript " >
3  $(document).ready( function (){
4      $( ' #tag li ' ).eq( 0 ).click( function (){
5         alert($(this).clone().text());   //显示的结果是“你说我是好人吗,我是好人啊” 代表是第一个li元素的文本内容  
6  });
7  < / script>

 

然后就是显示所有的li元素的列表内容,这里我们利用parent()方法来获取所有li元素的列表内容:

ExpandedBlockStart.gif 代码
< script type = " text/javascript " >
$(document).ready(
function (){
    $(
' #tag li ' ).eq( 0 ).fadeOut( " slow " , function (){
      
// alert($(this).clone().text());   显示的结果是“你说我是好人吗,我是好人啊” 代表是第一个li元素的文本内容  
      alert($(this).parent().text());   显示的结果是四个li元素之间的内容
});
< / script>

 

接下来要做的就是将获取到的第一条li元素中的内容追加到所有li元素列表内容的后面:

 

ExpandedBlockStart.gif 代码
< script type = " text/javascript " >
$(document).ready(
function (){
    $(
' #tag li ' ).eq( 0 ).fadeOut( " slow " , function (){
      
// alert($(this).clone().text());   显示的结果是“你说我是好人吗,我是好人啊” 代表是第一个li元素的文本内容  
       // alert($(this).parent().text());   显示的结果是四个li元素之间的内容
      $( this ).clone().appendTo($( this ).parent());  //可以看到页面中第一个li元素被自动添加到了第四个li元素的末尾
});
< / script>

 

接到上面,继续要做的就是让第一个li元素给隐藏掉,做法如下:

ExpandedBlockStart.gif 代码
< script type = " text/javascript " >
$(document).ready(
function (){
    $(
' #tag li ' ).eq( 0 ).fadeOut( " slow " , function (){
      
// alert($(this).clone().text());   显示的结果是“你说我是好人吗,我是好人啊” 代表是第一个li元素的文本内容  
       // alert($(this).parent().text());   显示的结果是四个li元素之间的内容
      //  alert($(this).clone().appendTo($(this).parent()).text());  可以看到页面中第一个li元素被自动添加到了第四个li元素的末尾
     $( this ).clone().appendTo($( this ).parent()).fadeIn( " slow " );
    });
});
< / script>

 

最后利用setInterval('scroll_news()',1000);反复调用即可

最终完整代码如下:

ExpandedBlockStart.gif 代码
< script type = " text/javascript " >
function  scrollNews(){
$(document).ready(
function (){
    $(
' #tag li ' ).eq( 0 ).fadeOut( " slow " , function (){
     $(
this ).clone().appendTo($( this ).parent()).fadeIn( " slow " );
     $(
this ).remove();
    });
});
}
setInterval(
' scrollNews() ' , 1000 );
< / script>

 

其实,一步一步的来,最终会得到结果的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值