我正在创建一个 Windows 7.1 Phone 应用程序,我在其中使用 webbrowser 显示 ePUB 书。我想在这个 html 文件中添加一个 JavaScript 脚本,并想知道如何在我的应用程序的浏览器对象中启用 JavaScript?我已将该IsScriptEnabled
属性设置为 true,但这似乎没有帮助。
有任何想法吗?提前致谢。
我正在创建一个 Windows 7.1 Phone 应用程序,我在其中使用 webbrowser 显示 ePUB 书。我想在这个 html 文件中添加一个 JavaScript 脚本,并想知道如何在我的应用程序的浏览器对象中启用 JavaScript?我已将该IsScriptEnabled
属性设置为 true,但这似乎没有帮助。
有任何想法吗?提前致谢。
例如,您可以在 html 页面中添加 js 代码:
Xaml 文件
<phone:WebBrowser Name="webBrowser" Height="500" HorizontalAlignment="Stretch" VerticalAlignment="Top" IsScriptEnabled="True" ScriptNotify="webBrowser_ScriptNotify"/>
.cs文件
private void scrollTo_Click(object sender, RoutedEventArgs e)
{
string H = y.Text;
webBrowser.InvokeScript("scroll", H);
}
private void getscroll_Click(object sender, RoutedEventArgs e)
{
webBrowser.InvokeScript("getScroll");
}
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
StreamReader reader = new StreamReader(TitleContainer.OpenStream("page.html"));
string content = "<script language=\"JavaScript\">"
+ "function scroll(H)"
+ "{"
+ "window.scrollTo(0, H);"
+ "}"
+ "function getScroll()"
+ "{"
+ "var body = document.body;"
+ "var docElem = document.documentElement;"
+ "var Y = window.pageYOffset || docElem.scrollTop || body.scrollTop;"
+ "window.external.Notify(\"\"+Y);"
+ "}"
+ "</script>"
+ reader.ReadToEnd();
webBrowser.NavigateToString(content);
}
private void webBrowser_ScriptNotify(object sender, NotifyEventArgs e)
{
y.Text = e.Value;
}
带有源代码的原始文章(俄语)