【发布时间】:2010-11-22 22:09:34
【问题描述】:
我有一个名为 A.html 的 Silverlight 应用程序测试页面,它托管在一个 iframe 中,它是 B.html 的一个元素,所以 Silverlight 应用程序有没有办法通过引用 HtmlPage.Document 之类的东西来访问 B.html 中的元素。 ?
谢谢!
【问题讨论】:
标签: html silverlight dom iframe
我有一个名为 A.html 的 Silverlight 应用程序测试页面,它托管在一个 iframe 中,它是 B.html 的一个元素,所以 Silverlight 应用程序有没有办法通过引用 HtmlPage.Document 之类的东西来访问 B.html 中的元素。 ?
谢谢!
【问题讨论】:
标签: html silverlight dom iframe
您总是可以通过执行以下操作来遍历 DOM 树:
var htmlElement = HtmlPage.Document.DocumentElement.Parent;
【讨论】:
使用 Silverlight/Moonlight 非常危险。您网站的大多数访客都不会安装此插件。这将严重限制您的网站可访问性。
改用 Flash,或者最好只使用 [x]html+css+javascript。
【讨论】:
在容器html页面中,添加如下函数:
function GetParent
{
return parent;
}
在 SL 控件中,执行以下操作:
HtmlWindow parent = (HtmlWindow)HtmlPage.Window.Invoke("GetParentWindow");
现在要从父 Html 页面调用任何函数,只需调用
parent.Invoke("myFunction");
希望这能解决您的问题。
艾哈迈德。
【讨论】: