Silverlight.js: 文件提供一些 JavaScript 帮助器函数,这些函数用于将 Silverlight 插件嵌入某一网页和用于自定义 Silverlight 安装体验。
常用函数:
函数原型:
Silverlight.createObject(source,parentElement,id,properties,events,initParams,userContext);
source:Xap文件的地址
parentElement:要加载到JHTML的节点,若为null则返回创建此对象的HTML字符串,否则无返回值,直接加载到节点上.
id:生成此对象的ID
properties:数组,包括{background:"red",enableHtmlAccess:true,maxFrameRate:30,windowless:false,version:"4.0",alt:"" }等,//至少要在此属性中指定一个版本,否则会报JS错误,但不保证生成正确的SL对象(SL3.0)
events:数组,包括onLoad和onError等
initParams:字符串,如 "arg1=val1,arg2=val2"
userContext:它在事件发生时传递到您的 onLoad 事件处理程序。可以使用些参数确认多个中的那个SL对象加载完成
使用些方法会用SL生成的HTML替换 parentElement.innerHTML
在MSDN上并没有查阅到相关定义数组信息,但是通过调试:
createObjectEx直接调用creatObject方法.
参数为 var obj = new Object();
obj["source"]="ClientBin/MySilverlight.xap"
obj["parentElement"]
obj["id"]
obj["properties"] //至少要在此属性中指定一个版本,但不保证生成正确的SL对象(SL3.0)
obj["events"]
obj["initParams"]
obj["context"]
Silverlight.onGetSilverlight = function()
{
alert("您将马上安装Silverlight插件,请稍候...");
}
返回值:如果已安装 Silverlight 插件并且在升级后要求浏览器重新启动,则为 true;否则为 false。
Silverlight.isInstalled ("2.0"),测试是否安装2.0或以上的版本SL
Silverlight.onSilverlightInstalled = function() {
alert("要做什么?");
}
WaitForInstallCompletion 函数在它检测到已安装 Silverlight 时将调用 onSilverlightInstalled 函数。但在用户从以���的版本升级 Silverlight 时,将不会发生上述调用。在这种情况下,用户必须重新启动浏览器。
您通常将使用 isbrowserRestartrequired 函数确定是否需要升级,然后显示相应消息。
默认 onSilverlightInstalled 函数将刷新浏览器窗口。您可以在网页的 onLoad 事件的处理程序中替换此行为。可以通过将该函数设置为 null,禁用自动刷新;或者,可以将其设置为您自己的函数。例如,代替刷新浏览器,您可以使用 createObject 或 createObjectEx 将新的 HTML object 元素直接插入您的网页。这样,无需浏览器刷新便可以嵌入新安装的插件。
新的 Silverlight 安装要求浏览器刷新,以便网页可以加载 Silverlight 插件。但是,Silverlight 升级要求浏览器重新启动,而不仅是刷新。
在您使用 Silverlight.js 时,如果该页面加载并且用户尚未安装 Silverlight,则默认调用 WaitForInstallCompletion 函数。在新的 Silverlight 安装完成后,WaitForInstallCompletion 函数将调用 onSilverlightInstalled 函数来刷新浏览器。您可以使用自己的函数替换 onSilverlightInstalled,以便禁用或自定义此行为。
MSDN:http://msdn.microsoft.com/zh-cn/library/cc838126(VS.95).aspx
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。