2012-05-03 2 views

답변

1

당신은 아래의 코드가를 ...

// sliding load board search option 
$(document).ready(function() { 
    $(".topMenuAction").click(function() { 
     if ($("#openCloseIdentifier").is(":hidden")) { 

       $("#slider").animate({ 
        marginTop: "-55px" //adjust as needed 
       }, 390); 


      $("#topMenuImage").html('<img src="https://lh5.googleusercontent.com/-4P1KGHJcd7w/T6MFfHRttBI/AAAAAAAACNA/JgwzfhkIrAs/w208-h208-n-k/arrow-up.png" height="50px" width="50px" alt="open" />'); 
      $("#openCloseIdentifier").show(); 
     } else { 
      $("#slider").animate({ 
       marginTop: "24px" 
      }, 350); 
      $("#topMenuImage").html('<img src="https://lh5.googleusercontent.com/-Xgkkkl6QmoM/T6MFfAqNwWI/AAAAAAAACNA/Ghf_F21rz0E/w208-h208-n-k/arrow-down.png" height="50px" width="50px"alt="close" />'); 
      $("#openCloseIdentifier").hide(); 
     } 
    }); 
});​ 

가장 큰 문제는, 당신의 marginTop 애니메이션 그냥 뒤로 것입니다. 첫 번째 코드를 -55px 대신 24px로 만든 다음 아래 코드와 같이 두 번째 -55px를 24px로 만드는 경우 예상대로 작동해야합니다.

// sliding load board search option 
$(document).ready(function() { 
    $(".topMenuAction").click(function() { 
     if ($("#openCloseIdentifier").is(":hidden")) { 

       $("#slider").animate({ 
        marginTop: "-55px" // Changed this to -55px 
       }, 390); 


      $("#topMenuImage").html('<img src="https://lh5.googleusercontent.com/-4P1KGHJcd7w/T6MFfHRttBI/AAAAAAAACNA/JgwzfhkIrAs/w208-h208-n-k/arrow-up.png" height="50px" width="50px" alt="open" />'); 
      $("#openCloseIdentifier").show(); 
     } else { 
      $("#slider").animate({ 
       marginTop: "24px" // Changed this to 24px 
      }, 350); 
      $("#topMenuImage").html('<img src="https://lh5.googleusercontent.com/-Xgkkkl6QmoM/T6MFfAqNwWI/AAAAAAAACNA/Ghf_F21rz0E/w208-h208-n-k/arrow-down.png" height="50px" width="50px"alt="close" />'); 
      $("#openCloseIdentifier").hide(); 
     } 
    }); 
});​ 
+0

어. 도와 줘서 고마워. – PixelMuse

+0

대단히 환영합니다. 내가 알아 차 렸던 또 다른 사실은 화살표가 당신을 위해 뒤로있을 수 있다는 것입니다.이 경우에는 이미지도 교환하십시오. 변경 - 업 - 다운, 그리고 - 다운 - 업 : – Bryan

+0

게시 된 답변을 실제로 읽으 셨으면 좋겠다. 변경 사항이 발생한 위치를 식별 할 수있는 주석이 있습니다. – Bryan

0

초기 상태가 hidden 상태와 일치하지 않습니다. 고정, it works.

$(document).ready(function() { 
    $("#openCloseIdentifier").hide(); 
    $("#topMenuImage").html('<img src="https://lh5.googleusercontent.com/-Xgkkkl6QmoM/T6MFfAqNwWI/AAAAAAAACNA/Ghf_F21rz0E/w208-h208-n-k/arrow-down.png" height="50px" width="50px"alt="close" />'); 

    // Your original code... 
} 
당신은 사전에 '<img ...>' 부분 문자열 변수를 정의하는 것을 고려할 수 있습니다

...

0

간단한; check is (": hidden")은 아직 숨겨져 있지 않은 잘못된 값을 반환합니다. 음수 오버플로로 인해 표시되지 않습니다. add

$("#openCloseIdentifier").hide(); 
관련 문제