WinJS开发iframe中Javascript执行错误----metro

由于应用界面中需要嵌入外部网页,所以使用了iframe控件。

但是从vs中运行程序后,当iframe载入的网页含有alert脚本的时候,程序就会进去错误debug模式。。。因为metro不支持alert

查阅文档后,发现iframe有sandbox(沙盒)这个属性,这个属性可以控制嵌入的网页的脚本是否执行等等,

但是沙盒模式会导致打开新窗口的那种超链接无法使用。所以也不行。

结论:

iframe中的网页环境 和 程序的Js环境是两个不同的环境。即不同的context。

iframe中的脚本异常是不会导致程序崩溃的。只会导致iframe中的网页内部错误。

所以之前的进入debug模式和程序是否崩溃没关系。 直接从metro界面启动程序,你会发现iframe中的alert等不会导致程序崩溃的,

只是alert的时候不会弹窗的。等等。