2009-06-22 5 views
1
$(document).ready(function(){ 
     var speed = 700; 
     var pause = 3500; 
      function removeFirst(){ 
       $('ul#newsfeed li:first').hide('slide', {direction: "up"}, speed, function() {addLast(this);}); 
      } 
      function addLast(first){ 
       $(first).insertAfter('ul#newsfeed li:last').show(); 
       $('ul#newsfeed li:first').show("slide", {direction: "down"}, speed); 
      } 

      interval = setInterval(removeFirst, pause); 
    }); 

안녕하세요. 내 문제에 도움을 주셔서 감사합니다. 이동 중 ... 정렬되지 않은 목록을 가져 와서 첫 번째 요소를 맨 아래로 이동하고 맨 위를 슬라이드하는 뉴스 티커 용 코드입니다. 나는 CSS를 사용하여 한 번에 하나의 목록 요소 만 보여줍니다. 이것은 즐겨 찾기, IE 6 및 IE 7을 제외한 모든 브라우저에서 정상적으로 작동합니다. 두 브라우저에서 첫 번째 목록 항목이 오른쪽으로 이동 한 다음 시야에서 벗어납니다. 그런 다음, 다음 목록 항목은 이미 오른쪽으로 이동하고 위쪽으로 이동 한 후 속하는 곳으로 왼쪽으로 이동합니다.Jquery 표시/숨기기 전에 표시하거나 숨기기 전에 요소를 오른쪽으로 이동합니다.

나는이 문제에 대해 상당히 혼란스럽고 도움이된다. 감사합니다. .

답변

1

내 대답이 조금 부족한 것 같아서 미안하지만 아마도 몇 가지 아이디어를 줄 수 있습니다.

슬라이드 애니메이션이 사용중인 상자 모델을 고려하지 않은 것 같습니다. 이는 슬라이드가 LI 요소의 위치를 ​​지정하려하지만 LI 외부의 일부 여백, 여백 또는 경계로 인해 오프셋 계산이 잘못되었음을 의미 할 수 있습니다.

나는 CSS를 검사 할 것이다. 또한 훨씬 단순한 (스타일이없는) HTML 버전이 똑같은 Javascript로 작동하는지 테스트 해보십시오.

다시 말해서 특이성이 부족해서 죄송합니다. 아마도 일부 코드를 공유하거나 예제를 가리킬 수 있습니까?

0

당신의 코드는 "Up"과 "Down"방향을 사용하지만, 왼쪽/오른쪽, 오른쪽/아래 또한 훌륭하게 작동합니다. list-style-type을 none으로 설정하고 list-style-position을 외부로 설정했습니다.

list-style-type:none; 
list-style-position:none; 
관련 문제