Windows phone 7 我可以将JavaScript对象注入WebBrowser吗?

Windows phone 7 我可以将JavaScript对象注入WebBrowser吗?,windows-phone-7,windows-phone-8,browser,Windows Phone 7,Windows Phone 8,Browser,我需要在WP7应用程序的WebBrowser元素中插入一个带有类的js文件,但我得到一个未知的运行时错误: webbrowser.InvokeScript("eval", "function Player() { this.play = function(e) { window.external.notify(e); }} 这可能吗?我自己也遇到过 问题是您没有将参数作为字符串发送。 eval将字符串作为参数,如果使用当前参数调用此脚本,它将转换为: eval(function Playe

我需要在WP7应用程序的WebBrowser元素中插入一个带有类的js文件,但我得到一个未知的运行时错误:

 webbrowser.InvokeScript("eval", "function Player() {  this.play = function(e) { window.external.notify(e); }}

这可能吗?

我自己也遇到过

问题是您没有将参数作为字符串发送。 eval将字符串作为参数,如果使用当前参数调用此脚本,它将转换为:

eval(function Player() {  this.play = function(e) { window.external.notify(e); }})
当你真正想做的是:

eval("function Player() {  this.play = function(e) { window.external.notify(e); }}")
因此,要纠正这一点,请尝试:

webbrowser.InvokeScript("eval", "\"function Player() {  this.play = function(e) { window.external.notify(e); }}\"");

描述你的错误。您可以在IDE中找到它。我曾经遇到一个js注入错误,因为我试图在webbrowser准备就绪之前注入它。确保将代码放入webbrowser的documentReady()回调中Windows Phone webbrowser中没有documentReady()回调,但当我将此代码放入导航回调中时,错误似乎消失了。现在没有错误。但它不起作用……重复:我必须承认我没有试过WP。然而,c#winform的情况类似。并在成功加载文档后调用Navigated()。Alla Masoud,它不是重复的。这个问题比你指出的更具体。