2013-04-24 40 views
0

這裏是我的代碼,到目前爲止,jQuery的,垂直滑動文本只是熄滅屏幕而不盤旋迴

function richardsSuperAmazingVerticalTextScroller(){ 


     $('#honor-roll ul').animate(
     { 
      top: '-=' + $('#honor-roll ul li:last').height() 
     }, 
     1000, 
     'linear', 
     function(){ 
      var offset = $('#honor-roll ul li:last').offset().top;     
      console.log(offset); 
      if(offset <= 640){ 
       $('#honor-roll ul li').css("margin", 0); 
       $('#honor-roll ul li:last').after($('#honor-roll ul li:first').detach()); 
      } 
     } 
    ); 
    } 
    $(document).ready(function(){ 
     setInterval('richardsSuperAmazingVerticalTextScroller()',1000) 
    }); 

上的jsfiddle它完美的作品,但在這個版本中失敗的話,http://barkins.com/test.html

這裏是小提琴上的相同碼,http://jsfiddle.net/qmFD3/6/

任何人都可以發現問題嗎?謝謝

回答

2

所以,它不是相同的代碼。特別是,你的jsfiddle有

if(offset <= 640){ 
    $('#honor-roll ul').css("top", 0); 
    $('#honor-roll ul li:last').after($('#honor-roll ul li:first').detach()); 
} 

在您網站上的代碼有

if(offset <= 640){ 
    $('#honor-roll ul li').css("margin", 0); 
    $('#honor-roll ul li:last').after($('#honor-roll ul li:first').detach()); 
} 

改變這種解決問題。

請注意,您不應該在setTimeout中使用字符串。你可以將其更改爲只:

setInterval(richardsSuperAmazingVerticalTextScroller,1000) 
+0

我對網站進行了更新,但仍然存在相同的問題。以下是更新後的版本,http://barkins.com/test.html – Richard 2013-04-24 15:04:32

+0

您使用的是不同版本的jQuery。你爲什麼不使用1.9.1? – 2013-04-24 15:37:41

+0

賓果!不幸的是,我將代碼插入的CMS內置了舊版本的jQuery。我需要嘗試插入更新的版本,並查看它是否工作,同時指向兩個版本的jQuery。謝謝! – Richard 2013-04-24 15:45:54

0

也許it's所有關於把

<script> 

身體元素內

+0

不是。這沒有什麼區別。 – 2013-04-24 14:57:36

+0

youre絕對正確 – 2013-04-24 15:02:57

1

你需要改變:

$('#honor-roll ul li').css("top", 0); 

到:

$('#honor-roll ul').css("top", 0); // Note the li 

以及包裝所有jQuery代碼內$(document).ready(function() { });

$(document).ready(function(){ 
    $('#honor-roll ul').css({display:"none"}); 
    $('#honor-roll ul').fadeIn('slow'); 
    setInterval(richardsSuperAmazingVerticalTextScroller,1000) 
}); 

編輯:

我想我知道爲什麼你的代碼不能正常工作的原因,這是因爲你的jQuery版本

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" type="text/javascript"></script> 

這裏是FIDDLE tha t與你的網站有完全相同的問題

所以你只需要使用另一個jQuery版本到你的網站,它應該工作。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script> 
+0

謝謝你做出了這些修改,但仍然有問題,http://barkins.com/test.html – Richard 2013-04-24 15:31:05

+0

@Richard你的css在小提琴和你的網站是不一樣的和你的jQuery版本。 – Eli 2013-04-24 15:33:26

+0

作出了改變,以及仍然無法正常工作,http://barkins.com/test.html – Richard 2013-04-24 15:37:37