2016-07-15 67 views
-1

我使用一些功能在運行我的應用程序時讀取瀏覽器信息。阻止Adobe Flex中的Internet Explorer

var appName:String = ExternalInterface.call("function getAppName(){ return navigator.appName; }"); 
var appVersion:String = ExternalInterface.call("function getAppVersion(){ return navigator.appVersion; }"); 
var userAgent:String = ExternalInterface.call("function getUserAgent() { return navigator.userAgent; }"); 

這是結果():

navigator.appName: Netscape 
navigator.appVersion: 5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 
navigator.userAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 

我如何 「塊」 的應用程序,所以它運行時,只允許FF的用戶無法使用IE瀏覽器, Chrome,Opera等...?

例如,帶一個警告框,並在後臺凍結應用程序,直到用戶在另一個瀏覽器上重新運行該應用程序。

謝謝!

P.S .:我有點新來StackOverflow,所以如果我的帖子不是最好的 形狀,請讓我知道!

+0

獲取用戶代理後,必須只是爲了驗證它是否是IE的做你想做的事... – akmozo

+0

順便說一句,你可以降低你的外部接口調用,只是這個ExternalInterface.call(「navigator.userAgent的是什麼「);無需將其包裝在自己的功能中。 –

回答

1

檢查用戶代理是否包含字符串「msie」。如果它確實顯示警報。

if (userAgent.contains("msie")) { 
    Alert.show("nope"); 
} else { 
    //carry on 
} 
相關問題