【问题标题】:Can I create a cross browser compatible silverlight page without code behind?我可以在没有代码的情况下创建跨浏览器兼容的 Silverlight 页面吗?
【发布时间】:2017-06-09 16:43:34
【问题描述】:

我一直在使用 xaml、javascript 和 html 开发一个 silverlight 页面(我实际上只有一个 .html、.js 和 .xaml 文件)。问题是,我刚刚意识到它在任何浏览器中都不起作用,除了 Internet Explorer(肯定是 7)。

我有太多的代码行想要在后面添加 vb.net 或 Visual c 代码并使用 html 桥。我只希望 xaml 鼠标事件像以前一样直接工作。换句话说,当 xaml 的 MouseLeftButtonDown 说“highlightMe”时,我希望该 highlightMe 函数是一个 javascript 函数。但我也希望我的页面可以在任何浏览器中运行。

现在,我尝试使用 vb.net 或 visual c.net 创建一个全新的 Visual Studio 项目,但 xaml 文件事件似乎指向事件背后的代码。此外,它将silverlight 编译成一个.XAP 文件。 XAP 文件实际上是一个带有已编译 dll 和 appmanifest.xaml 的 .ZIP 文件。

那么,如何配置我的 appManifest.xaml 以处理仅包含 javascript 和 xaml(以及指向 .XAP 作为源的 html 文件)的 silverlight 页面。 html部分,我想我明白了。 AppManifest 是另一回事,我肯定需要帮助。

我认为这与创建 app.xaml 和 page.xaml 以及使用主标记的 x:Class 值有关。

【问题讨论】:

  • 您使用的是什么版本的 Silverlight?
  • 尝试使用版本 2。听说只使用 javascript、xaml 和 html 仅限于版本 1。

标签: javascript silverlight xaml code-behind xap


【解决方案1】:

自从我问了这个问题后,我找到了一个页面......

http://pagebrooks.com/archive/2009/02/19/custom-loading-screens-in-silverlight.aspx

...这 1) 显示人们最近在他们的 silverlight 页面上使用了类似的模型 .js.xaml.html,以及 2) cmets 中的某个人建议使用 firebug 来追踪 silverlight javascript 错误的问题.

这向我证明了使用这种silverlight 模型是可以的,并且它应该可以在其他浏览器中使用。这也让我去尝试firebug。萤火虫太棒了。如果您启用控制台选项卡,您可以准确地看到 javascript 挂起的位置。现在它正在工作,我可以看到我的gets/posts 到谷歌应用引擎的结果。

Firebug 表明我使用 if then else 语句的方式只有 internet explorer 允许。例如,

if (blah == 1) { blah2 = 3}

else { blah2 = 5};

适用于所有浏览器,但这不适用:

if (blah == 1) { blah2 = 3} ;

else { blah2 = 5};

Firefox 和 chromesafari 显然都不需要 ; else 和 if 之间的结束语句字符。

所以,目前,我似乎已经解决了跨浏览器兼容性的问题,但我仍然想了解更多关于 appmanifest.xaml 以及如何制作仅包含 javascript.xap 文件的信息。我以后可能需要它。

【讨论】:

猜你喜欢
  • 2011-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-13
  • 1970-01-01
  • 2012-05-18
  • 2015-08-29
相关资源
最近更新 更多