2009-11-21 1 views
0

jQuery 코드 :jQuery의 load()를 만들 수 있습니까? 천천히 나타 납니까?

$(document).ready(function() { 
    $("#post_submit").click(function(event) { 
     event.preventDefault(); 
    $("#show").load("post.php", { 
     submit: $("#post_submit").val(), 
     title: $("#title").val(), 
     body: $("#body").val(), 
     tags: $("#tags").val() 
    }); 
    }); 
}); 

이 잘 작동하고 정보 페이지를 다시로드 (야호)없이 표시되어 있지만 매우 부드러운 아니다. $(div).show("slow"); 또는 $(div).toggle("slow")처럼 천천히 나타낼 수 있는지 궁금합니다.

답변

2

이렇게하는 방법은 숨겨진 컨테이너에 새 콘텐츠를로드하는 것입니다. 그런 다음로드 이벤트가 끝날 때까지 쇼 ('느리게')를 연결하십시오.

jQuery documentation에 표시된대로 load는 jQuery 객체를 반환하므로 다른 이벤트와 연결될 수 있습니다. 나는 이것이 대부분의 상황에서 눈에 띄는 것입니다 의심 - -이 코드`쇼를 사용하여

$("#show").hide(); 
$("#show").load("post.php", { 
    submit: $("#post_submit").val(), 
    title: $("#title").val(), 
    body: $("#body").val(), 
    tags: $("#tags").val() 
}).show("slow"); 
+0

의 라인을 따라

뭔가()'post.php''전에 실행됩니다로드를 완료하지만 수 있습니다 콜백에'show()'를 추가 할 가치가있다. 이것은'post.php'가로드 된 후에 만 ​​실행될 것이다. – James

관련 문제