我正在使用Silverlight.js创建一个Silverlight控件,如下所示:
var properties = {
width: '640px',
height: '480px',
background: 'black',
version: '2.0.0.0'
};
var events = {
onError: function() { alert('eek!'); },
onLoad: function(sender, args) { sender.content.Page.foo(); }
};
Silverlight.createObject(
'/beta/ClientBin/DeepZoomProject.xap', // source
container, // parent element
'slPlugin', // id for generated object element
properties,
events,
'',
'context' // context helper for onLoad handler.
);
在Silverlight控件中,我已经做了正确的事情,使其可编写脚本:
[ScriptableType]
public partial class Page : UserControl {
public Page() {
InitializeComponent();
HtmlPage.RegisterScriptableObject("Page", this);
}
[ScriptableMember]
public void foo() {
// doing something here
}
}
...事实上,它在Windows中的IE8,Firefox,Safari和Chrome以及Mac上的Safari和Chrome中运行良好。但是,它不适用于Mac上的Firefox(3.6)。在Firefox中,sender.content没有Page(或页面,就此而言)。它确实有根,但我不知道从那里去哪里。
关于我接下来可以尝试的任何想法?
答案 0 :(得分:0)
原来我的Silverlight安装存在问题;只发生在那台机器上,当我重新安装Silverlight时,一切都很好。