Silverlight开发工具的应用领域比较广发。不过即使是这样一款功能强大的工具,在使用的时候同样也会造成一些问题的产生。比如跨域引用Silverlight时,就会出现一些令人头疼的问题。跨域引用Silverlight,即将Silverlight包部署在A域下,却由在B域下的网站引用。其中Silverlight通过HTML.Window调用了脚本方法。#t#
我们提供的服务有:成都网站设计、成都做网站、外贸网站建设、微信公众号开发、网站优化、网站认证、且末ssl等。为近千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的且末网站制作公司
示例代码
跨域引用Silverlight异常描述
进入B域页面,没有看到Silverlight展现,右键点击相应区域,显示“Silvelight”,说明Silverlight区域已经被渲染出来。通过HTTP Watch查看,发现Xap包已经被请求并下载下来,但就是没有展现。
Silverlight正常显示,但点击按钮后,并不弹出对话框。调试发现,在HtmlPage.Window.Alert("hi");抛出异常,异常信息为“已禁用DOM/脚本桥”。
跨域引用Silverlight问题解决
加载却不展示,是由于在A网站下没有给Silverlight配置正确的MIME类型。当引用不同域下的Silverlight包,Silverlight Runtime会检测XAP的HTTP头中的MIME类型。正确的类型是“application/x-silverlight-app”,如果配为“application/x-silverlight-2”(这似乎是旧版本的MIME配置),同样不能正常显示。IIS7由于默认带有Xap的MIME类型配置,所以不会出现此类问题。
不能正常弹出Alert对话框,但如果改成MessageBox.Show("Click");却可以正常运行。这是因为需要配置Silverlight以及Host Silverlight的页面的几个参数,使得Silverlight中的ManagedCode和页面中的Javascript和DOM code可以交互。而在同域下,这几个参数或者是默认配置好的,或者就是干脆无效,所以不需要配置。具体可参考(Security Settings in HTML Bridge),具体到这里的情况,就是要在页面中配置enableHtmlAccess属性,使在Silverlight的Manage code里可以操纵外部Dom对象。
Asp.net页面:
- < asp:Silverlight ID="Xaml1" HtmlAccess="Enabled"
runat="server"Source=http://localhost:2300/
ClientBin/SilverlightApplication.xap
MinimumVersion="2.0.31005.0" Width="100%"
Height="100%" />HTML页面:- < object data="data:application/x-silverlight-2,"
type="application/x-silverlight-2"
width="80%" height="80%" >- < param name="enableHtmlAccess" value="true" />
- < param name="source" value="http://
localhost:2300/ClientBin/Silverlight
Application.xap"/>- < param name="onerror" value="onSilverlightError" />
- < param name="background" value="white" />
- < param name="minRuntimeVersion"
value="2.0.31005.0" />- < param name="autoUpgrade" value="true" />
- < a href="http://go.microsoft.com/
fwlink/?LinkID=124807" style="text-
decoration: none;">- < img src="http://go.microsoft.com/
fwlink/?LinkId=108181" alt="Get Microsoft
Silverlight" style="border-style: none"/>- < /a>
- < /object>
以上就是我们为大家带来的跨域引用Silverlight相关问题解决办法。
文章名称:跨域引用Silverlight相关问题解疑
标题路径:http://www.shufengxianlan.com/qtweb/news4/405904.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联