javascript检测是否安装silverlight

ie视silverlight为一种activex控件,因此可以试着用javascript创建这个activex,如果创建失败可以认为没有安装silverlight;对于其他浏览器如firefox等,可以通过观察浏览器对象数组的silverlight插件,silverlight安装后叫Silverlight Plugs-In

    <script type="text/javascript">
        function TestSilverlight() {

            var browser = navigator.appName;
            if (browser == "Microsoft Internet Explorer") {
                try {
                    var slControl = new ActiveXObject('AgControl.AgControl');
                    alert('您已经安装了silverlight');
                } catch (e) {
                    alert('没有安装silverlight');
                }
            } else {
                try {
                    if (navigator.plugins('Silverlight Plug-In')) {
                        alert('您已经安装了silverlight');
                    }
                } catch (e) {
                alert('没有安装silverlight');
                }
            }
        }
    </script>

将此javascript方法写在承载silverlight的页面中,然后可以在silverlight的xaml页面的后台代码中调用此方法如

System.Windows.Browser.HtmlPage.Window.Invoke("TestSilverlight");

原文地址:https://www.cnblogs.com/songling/p/2136095.html