2014-02-16 38 views
3

我想在3秒後關閉頁面上的所有警示框項目。我可以做3秒後基礎關閉警報

window.setTimeout (-> 
    $('.alert-box').remove() 
    return 
), 3000 

但是,這不同於單擊警報中的x按鈕。它不動畫它。既然它已經寫在某個地方,我不想重寫它。

我試圖

$('.alert-box').data('events') 

找到註冊的處理程序,也許發現,關閉動畫和這樣的警告的方法,但與沒有運氣。我也嘗試過FireQuery插件,但是,它也沒有完成這項工作。

我希望有關閉警報像

Foundation.alert.close(jQuery object) 

或東西,你可以幫我出一些方法?

回答

2

如果你的警告框有着密切的錨元素,你可以嘗試這樣做:

$(".alert-box a.close").click(); 

這或多或少是什麼official tests do。但是,這似乎並不可靠。 The code實際上是在'[alert] a.close'上收聽'click.fndtn.alert'。

$(".alert-box a.close").trigger("click.fndtn.alert") 
+0

該做的伎倆感謝 – brancz

2

感謝分享!這正是我期待的。

爲了使關閉友好我已經添加$(".alert-box").slideUp();即生成的代碼多個用戶:

$(document).ready -> 
    window.setTimeout (-> 
     $(".alert-box").slideUp(); 
     $(".alert-box a.close").click(); 
     return 
), 15000