【发布时间】:2014-09-22 12:16:36
【问题描述】:
这里对 XCode 很陌生
基本上,我们有一个依赖于 UIWebView 的应用程序。当有有效的网络连接时,我们将一个移动网页加载到 UIWebView 中,如果没有连接,我们将加载一个本地版本的 html 网页。我的场景与离线或受限网络连接场景有关。当这种离线场景确实发生时,我可以使用这个线程的答案很好地加载我的本地 html 文件:
Load resources from relative path using local html in uiwebview
当单击加载的本地 html 文件中的简单 html 链接(也在我的本地应用程序目录中)时,我的问题出现了。我试过这些,但是当我点击链接时,什么也没有发生,链接不会带我去任何地方,模拟器只会让我复制文本:
<a href="file:///Sample.html">
<a href="file://Sample.html">
<a href="Sample.html">
<a href="/Sample.html">
<a href="Testing/Sample.html">
sample.html 网页与初始加载的 html 页面位于同一目录中。不知道我哪里出错了,显然缺少一些简单的东西。
【问题讨论】:
-
其实
webpage中的html在服务端有自己的目录结构。因此,如果您单击网页中的链接(在线模式),则会引用服务器目录中的该链接。在离线模式下,您刚刚下载了页面的 HTML 内容,但您无权访问该服务器目录以实际点击链接。明白了吗? -
我想我明白你在说什么。但我已将服务器内容和页面拉到我的本地目录中。然后我不能参考我的 sample.html 页面,因为它也在我的本地目录中(在应用程序本身中)?
-
现在这是实际问题,伙计!尝试在 iOS 模拟器的 Safari 浏览器中访问相同的内容并分享结果
-
我稍微编辑了一下,让它更明显
-
您能否在您的问题中添加一些代码,这些代码可能显示链接周围的部分,以及您如何设置 webview url。