2013-10-30 4 views
0

그래서 div를 클릭하면 해당 페이지가 페이드 아웃되고 다른 페이지가 페이드 인되도록하는 버튼이 있습니다 (페이지 2는 표시하도록 설정 됨 : 없음). 내 스크립트가 작동하지 않습니다. 아무도 내가이 문제를 해결하도록 도울 수 있습니까?jquery 함수는 입력 변수를 사용하지 않을 것입니다.

<div> 
    <div id="page1"> 
     <button onclick="fade(page1,page2)"></button> 
    </div> 
    <div id="page2"></div> 
</div> 

<script type="text/javascript"> 
function fade(out_ID, in_ID){ 
    $("#"+out_ID).fadeOut(1000); 
    $("#"+in_ID).delay(1000).fadeIn(1000); 
} 
</script> 
+6

매개 변수는 문자열이어야합니다. 'onclick = "fade ('page1', 'page2')" –

+1

'$ ("# undefined")'가 존재하지 않습니다. 페이지 1이 없기 때문에 오류가 발생해야합니다. –

+0

감사합니다 joe! 그게 효과 :) 자세한 내용에 더 많은 관심을 기울일 필요가 –

답변

0
당신이 전체에 jQuery를 사용하여 인라인 자바 스크립트를 제거하기 위해 다시 작성해야

가 :

<div> 
    <div id="page1"> 
     <button id="myButton"></button> 
    </div> 
    <div id="page2"></div> 
</div> 

<script type="text/javascript"> 
    // wait for page to load 
    $(function() { 
     $('#myButton').click(function(){ 
     fade($('#page1'), $('#page2')); 
     }); 
    }); 

    function fade(out_ID, in_ID){ 
     out_ID.fadeOut(1000); 
     in_ID.delay(1000).fadeIn(1000); 
    } 
</script> 

을 분류해야한다.

1

사용해보기 : 매개 변수에 따옴표를 추가하기 만하면됩니다.

<button onclick="fade('page1','page2')"></button>