2012-02-27 33 views
2

是否有一種簡單的方法來記住在顯示加載對話框之前關注的元素,並將焦點返回給該元素? 頁面上有一個搜索按鈕,通過鍵盤上的按鈕發送ajax請求以從服務器獲取數據。在每個ajax請求上,模態加載對話框會顯示(注意它是jquery對話框),並且在響應之後,搜索元素的焦點將丟失,並且我需要它。jQuery:加載對話框後返回焦點

謝謝。

+0

剛澄清 - 你是否說你想在焦點在jQueryUI對話框上點擊關閉後在搜索字段中? - http://jqueryui.com/demos/dialog/ – house9 2012-02-27 01:42:39

+0

啊,我想我還不夠清楚。我希望將焦點返回到之前的活動元素(就像jfriend00所假設的那樣) - 並不是特定的搜索輸入。 – frenzy 2012-02-27 09:46:22

回答

4

之前你把對話框,你可以保存焦點的這個位置:

var origFocus = document.activeElement; 

而且,當時的對話框消失後,可以將其還原:

origFocus.focus();