2014-09-03 5 views
-2

JS 코드에 문제가 있습니다. 요소의 CSS 속성 "left"를 변경하고 싶습니다. 정확한 문제가 무엇인지 확신 할 수 없습니다. 나는 JS에 상당히 익숙하다. 다음 코드는 내 CSS와 JS 코드를 보여줍니다.JS로 CSS 속성 "left"변경하기가 작동하지 않습니다.

CSS :

#Slider_Cont_Section 
{ 
    left: 0; 
} 

자바 스크립트 :

여기
<script type="text/javascript"> 
function FunzioneSliderLeft() 
{ 
var left = document.getElementById("Slider_Cont_Section").style.left; 
if (left = "0px") 
{ 
    left = "0px"; 
} 
else if (left = "-1280px") 
{ 
    left = "0px"; 
} 
else if (left = "-2560px") 
{ 
    left = "-1280px"; 
} 
else 
{ 
    left="-2560px"; 
} 
</script> 




<script type="text/javascript"> 

function FunzioneSliderRight() 
{ 
    var left = document.getElementById("Slider_Cont_Section").style.left; 

    if (left = "0px") 
    { 
     left = "-1280px"; 
    } 

    else if (left = "-1280px") 
    { 
     left = "-2560px"; 
    } 
    else if (left = "-2560px") 
    { 
     left = "-3840px"; 
    } 
    else 
    { 
     left="0px"; 
    } 
</script> 
+1

"설명"충분하지 않습니다. 정확히 무엇을하려고하고 정확히 무엇이 잘못되었는지에 대한 정보를 제공해주십시오. 어떤 오류가 있습니까? – Lix

+0

또한 게시물에 의미있는 제목을 만들어보십시오. – Lix

답변

0

입니다 수정 된 코드 :

는 "=="또는 "==="대신의 비교 "=" .

"=" is for allocation. 
"==" is for checking if it's the same value. 
"===" is for checking same value and same type. 

Here 자세한 정보가 있습니다.

또한 스타일을 다시 설정해야합니다. 그렇지 않으면 변수 만 변경됩니다.

function FunzioneSliderLeft() { 

var left = document.getElementById("Slider_Cont_Section").style.left; 

if (left == "0px") { 
    return; } 
if (left == "-1280px") { 
    left = "0px";} 
else if (left == "-2560px") { 
    left = "-1280px";} 
else { 
    left="-2560px"; } 
document.getElementByID("Slider_Cont_Section").style.left = left; 
} 
function FunzioneSliderRight() { 

var left = document.getElementById("Slider_Cont_Section").style.left; 

if (left == "0px") { 
    left = "-1280px"; } 
else if (left == "-1280px") { 
    left = "-2560px";} 
else if (left == "-2560px") { 
    left = "-3840px";} 
else { 
     left="0px"; } 
document.getElementByID("Slider_Cont_Section").style.left = left; 
} 

대신 많은 값을 확인, 당신은 스위치 명령을 사용할 수 있습니다. 코드를 더욱 향상 시키려면 JQuery 프레임 워크를 사용할 수 있습니다.

function FunzioneSliderLeft() { 

var left = $("#Slider_Cont_Section").css("left"); 

switch(left) { 
    case "0px": 
     return; 
     break; //for the Validator 
    case "-1280px": 
     left = "0px"; 
     break; 
    case "-2560px": 
     left = "-1280px"; 
     break; 
    default: 
     left = "-2560px"; 
} 

$("#Slider_Cont_Section").css("left") = left; 

function FunzioneSliderRight() { 

var left = $("#Slider_Cont_Section").css("left"); 

switch(left) { 
    case "0px": 
     left = "-1280px"; 
     break; 
    case "-1280px": 
     left = "-2560px"; 
     break; 
    case "-2560px": 
     left = "-3840px"; 
     break; 
    default: 
     left = "0px"; 
} 

$("#Slider_Cont_Section").css("left") = left; 
} 

코드보다보기에는 좋지만 개선 사항이 많습니다. 당신이 정확히 성취하고자하는 것을 우리에게 말해주는 것이 좋을 것입니다. 이 방법으로 문제가 있지만 표현을 수정하려고하면

+0

지금 fuction 일 ... thx 전부를 위해 : - D –

0

메신저 확실하지 :

if (left = "0px") 

실제로 할당합니다. 표현식은 다음과 같이 "=="로 기록됩니다

if (left == "0px") 

나는이 문제 :

편집를 해결 희망 :이 문제를 해결 나던. 하지만 그냥 명심하십시오 :

+0

고침을위한 감사 : - D –