gpt4 book ai didi

webbrowser-control - WP8 WebBrowser : inline script works, 加载不

转载 作者:行者123 更新时间:2023-12-04 05:24:22 33 4
gpt4 key购买 nike

Windows Phone 8 应用程序,WebBrowser 控件。我通过 NavigateToString 加载了一大块 HTML (设置后 IsScriptEnabled=true )。一段时间后(加载很久之后),我使用 InvokeScript 在页面上调用了一些 JavaScript。

当我调用在 <script> 中内联定义的 JavaScript 函数时元素,它按预期工作。当我调用在外部 JS 文件中定义的一个时,它不会,并且抛出 HRESULT 0x80020006(“找不到名称”)的异常。

外部脚本文件是从我的应用程序包中加载的。在 HTML 字符串中,有一个 <base>包含 file:// 的元素包文件夹的 URL(通过 Package::Current->InstalledLocation 检索)和 <script>元素只包含文件名。该文件夹中还有样式和图像 - 它们加载良好。

HTML 没有 DOCTYPE没有 xmlns - 我知道这些东西有时会让 JavaScript 失效。

外部脚本文件是有效的 - 它直接来自 Android,它在相应的 WebView 控件上工作。无论如何,我试图调用的函数是空的,为了安全起见,JavaScript 语法。

理论上,这可能是某种跨域脚本问题。从技术上讲,该脚本来自 file:// URL 而页面本身根本没有来自任何 URL。某些确保没有可疑脚本被调用的系统代码可能会妨碍您。

最佳答案

找到一种解决方法:在启动时将外部脚本文件加载到字符串中,一旦加载 HTML(LoadCompleted 触发),使用 JavaScript eval 将其提供给文档.

关于webbrowser-control - WP8 WebBrowser : inline script works, 加载不,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13368921/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com