2008-11-21 39 views
1

我想在點擊一個按鈕並顯示其焦點時,在裏面顯示帶有輸入的div。爲什麼我無法將我使用slideDown()顯示的控件進行對焦?

如果我使用show(),它可以工作,但是如果我使用slideDown(),動畫完成後焦點將丟失。我怎樣才能防止這種情況發生?

示例代碼:

$("document").ready(function(){ 
    $("#MyButton").click(function(e){ 
     e.preventDefault(); 
     $(".SlidingDiv").slideDown(); 
     $("#MyInput").focus(); 
    }); 
}); 

<input type="button" value="Click Me" id="MyButton" /> 
<div class="SlidingDiv" style="display:none;"><input type="text" id="MyInput" /></div> 

回答

10

試試這個:

$(function(){ 
    $("#MyButton").click(function(e){ 
     e.preventDefault(); 
     $(".SlidingDiv").slideDown(function(){ 
      // Callback function - will occur when sliding is complete. 
      $("#MyInput").focus(); 
     }); 
    }); 
}); 
+0

是的!你搖滾!謝謝!!! – Teller 2008-11-21 17:39:32

1

我想你可以只專注於元素一旦DIV已經全面停止了滑動?
不知道......

相關問題