我知道browsersniffing不是爲多個瀏覽器設計網站的正確方法。然而,我的問題與設計一個適合每個瀏覽器的網站無關。瀏覽器嗅探
如果瀏覽器是谷歌瀏覽器或Firefox 4+,我想爲用戶提供將網站安裝爲網絡應用程序的能力,如果是Opera,則作爲小部件,如果是Safari,則作爲擴展程序......等等
基本上我想用一個提供這種安裝的按鈕在div中滑動。如果瀏覽器是Safari,則Safari不支持顯示webapp解決方案。
那麼我該如何做到這一點呢?
我發現這個基於特徵,而不是用戶代理
Safe feature-based way for detecting Google Chrome with Javascript?
var is = {
ff: window.globalStorage,
ie: document.all && !window.opera,
ie6: !window.XMLHttpRequest,
ie7: document.all && window.XMLHttpRequest && !XDomainRequest && !window.opera,
ie8: document.documentMode==8,
opera: Boolean(window.opera),
chrome: Boolean(window.chrome),
safari: window.getComputedStyle && !window.globalStorage && !window.opera
}
這似乎爲我工作的需要,是短期和不笨重,或多或少惡搞安全
在Chrome中is.safari == true(或者我需要Chrome升級)。 – 2011-05-26 07:15:51
爲什麼你想要欺騙安全?你真的想過嗎?爲什麼人們會惡搞?我從來沒有需要,但如果有人想在Firefox下載你的Opera小部件,讓他們,他們可能有一個合法的理由。我不認爲如果某件事不起作用,那麼欺騙者就會抱怨,這實際上是他們自己做的。 – 2011-05-26 07:27:46
這段代碼有幾個錯誤。你能更明確嗎?您想要定位哪個瀏覽器版本? – Knu 2011-05-27 23:09:49