[英]How to determine if window.confirm() is supported?
我有一個移動網站,各種設備都在使用它,其中包括一些板載計算機,這些計算機運行的是帶有IE 7的Windows Embedded 7的鎖定版本。由於某些原因,我無法解釋, window.confirm()
已損壞,但所有其他JavaScript似乎都無法工作。
在連接確認處理程序之前,我什至添加了以下檢查,但是單擊鏈接根本無濟於事。
if (window.confirm)
{
$(".logoff").click(function ()
{
return confirm("Are you sure you want to log off?");
});
}
如果刪除點擊處理程序,則鏈接將正常運行。 有沒有更好的方法來測試confirm()
支持confirm()
?
怎么樣:
if ('confirm' in window) {
$(".logoff").click(function () {
return window.confirm("Are you sure you want to log off?");
});
}
另一個選項是window.hasOwnProperty('confirm')
。
您可以使用typeof來檢查window.confirm是否為函數
你可以做
if ('confirm' in window && typeof window.confirm === 'function' ) {
$(".logoff").click(function () {
return window.confirm("Are you sure you want to log off?");
});
}
if(typeof confirm=='function')// window.confirm is defined and a function
盡管以下建議的方法在我測試的每個台式機瀏覽器中均有效,但它們在設備上的評估結果均為true,並且仍未顯示對話框或導航至錨點href中的鏈接。
if (typeof confirm == 'object')
if ('confirm' in window && typeof window.confirm === 'object')
if (window.confirm)
(在IE 7中, typeof somefunction
'function'
typeof somefunction
是'object'
而不是'function'
)
我的解決方案是根據@ThiefMaster的建議使用jQuery UI對話框 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.