我需要检测通过AS3内flex mxml appication这是我的浏览器 - FF,铬,IE等,只有名称和版本。如何做这样的事情?Actionscript 3,flex:如何找出你目前使用的浏览器?
0
A
回答
7
是的,你要使用JavaScript,但你实际上不需要把JavaScript放在页面中。
这里是正从你的Flex应用程序,信息无所添加到包含HTML页面的快速脚本示例:
<?xml version="1.0"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
creationComplete="creationCompleteHandler(event)">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
protected function creationCompleteHandler(event:FlexEvent):void
{
var appName : String = String(ExternalInterface.call("function(){return navigator.appName}"));
var appVersion : String = String(ExternalInterface.call("function(){return navigator.appVersion}"));
var userAgent : String = String(ExternalInterface.call("function(){return navigator.userAgent}"));
trace(appName) ;
trace(appVersion);
trace(userAgent);
}
]]>
</fx:Script>
这痕迹信息输出到控制台,因此,例如,当我运行它我得到:
Microsoft Internet Explorer
4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; GTB6.6; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E)
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; GTB6.6; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E)
让我知道如果您有任何问题!
1
如果您在Flash库中使用某些客户端JavaScript和ExternalInterface类,这并不难理解。
这里做一个简短的教程:http://codingrecipes.com/calling-a-javascript-function-from-actionscript-3-flash
你的JS就需要运行一个浏览器客户端检查。
0
根据我的研究navigator.appName
将针对IE11,Firefox,Chrome和Safari等浏览器返回字符串Netscape
。检查this.
如果你想检测浏览器的名称试试这个:
var browserName:String;
var userAgent:Object = ExternalInterface.call("window.navigator.userAgent.toString");
if(userAgent.toLowerCase().indexOf("chrome") !== -1)
{
browserName = "Chrome";
}
if(userAgent.toLowerCase().indexOf("mozilla") !== -1)
{
browserName = "Mozilla";
}
if(userAgent.toLowerCase().indexOf("safari") !== -1)
{
browserName = "Safari";
}
相关问题
- 1. Actionscript 3浏览器要求
- 2. 使用Flex(ActionScript 3的)
- 3. actionscript flex,如何将浏览器宽度发送到swf本身
- 4. 在Actionscript 3/flex
- 5. Flex 3 + AlivePDF - 如何在浏览器中显示pdf
- 6. 如何在flex 3中关闭浏览器时处理注销?
- 7. 如何从你的浏览器
- 8. Flex 3读取浏览器http代理设置
- 9. Active Flash/Flex/ActionScript 3 AOP项目?
- 10. 如何使用ActionScript在Air中创建HTML“浏览器”区域?
- 11. 如何从ActionScript打开多个弹出式浏览器窗口?
- 12. 如何从Actionscript(Flash)打开浏览器弹出窗口?
- 13. 你如何在Web浏览器上WP7
- 14. 你如何在浏览器中断JS?
- 15. 查找出来,如果浏览器是IE6或之前
- 16. 如何禁用浏览器浏览器?
- 17. 如何使用Flex/AS3获取浏览器时区?
- 18. 如何为Flex actionscript 3项目设置背景颜色
- 19. Flash IDE项目ActionScript 3 To Flex:如何转换?
- 20. 如何使用actionscript 3连接到flex 4中的闪存介质服务器?
- 21. 如何使用Flex/ActionScript 3通过Socket传输实况视频?
- 22. flex sdk actionscript 3编译
- 23. Flex 3 Actionscript Array Subtract功能
- 24. 使用Watir查找当前打开的浏览器(firefox)窗口
- 25. 如何找出浏览器连接的服务器IP地址(使用JavaScript)?
- 26. VB.Net Web浏览器控件 - 你如何处理弹出窗口?
- 27. 你如何使用Linkify发出startActivity而不是做浏览器链接
- 28. Silverlight 3退出浏览器更新
- 29. (Actionscript 3 noob)你如何正确使用“继续”?
- 30. 迷你javascript浏览器
感谢接受。附: userAgent是关闭浏览器嗅探的最可靠的工具。 :) – Nate
'navigator.appName'返回'Netscape'而不是浏览器名称。 –