2012-07-15 2 views
0
$("#footer div ul li").each(function(a) { 
    $("#footer div ul li:nth-child(" + a + ")").css({ 
     left : 275*a - 275 + "px" 
    }); 
}); 

jQuery를 사용하여 모든 li의 왼쪽 오프셋을 생성하고 싶습니다. 첫 번째 요소는 0px, 두 번째 275px, 세 번째 550px 등이 있어야합니다. .each() 루프와 비슷한 것이 있지만 첫 번째 요소에서만 작동합니다.
누군가 내가 뭘 잘못하고 있다고 말할 수 있습니까?jQuery로 요소의 왼쪽 오프셋을 생성합니다.

+0

"하지만 첫 번째 요소에서만 작동합니다."- 다음은 무엇입니까? – zerkms

답변

1

그냥 사용 this

$("#footer div ul li").each(function(a) { 
     $(this).css({ 
      left : 275*a - 275 + "px" 
     }); 
    }); 
+0

놀라운 와우. 고맙습니다! –

+0

만약 당신이 대답을 수락 할 수 – coolguy

0

방법에 대해 :

$("#footer div ul li").each(function(index, element) { 
    $(this).css({ 
     left : 275*index + "px" 
    }); 
}); 

?

지수는 0을 기반으로해야한다, 그래서 당신이 다음 275을 뺀하는 이유 나도 몰라

또한 단지 domElement을 조작 할 수있다 (즉, 0 픽셀, 275px을 ... -275px 주어야한다) jQuery가 다음과 같이 전달합니다.

$("#footer div ul li").each(function(index, element) { 
    element.style.left = 275*index + "px"; 
}); 
+0

네, 내 잘못. 감사! –

관련 문제