Phonegap iOS链接到文件系统的文件

时间:2014-05-11 14:50:43

标签: ios cordova filesystems href

我创建了Phonegap应用程序,用于保存文件系统中的网页。当我从文件系统打开任何这些网页时,只加载所选页面,但不加载相关文件(图像,css等)。

例如,路径下的文件系统中有网页:

cdvfile://localhost/temporary/1/

在此目录中有以下文件:index.html,style.css,img / background.png等。 当我打开文件index.html时,只打开此文件,但页面没有样式,也没有图像。这些相关文件在index.html中具有相对路径。

此情况仅适用于iOS平台。在Android平台和谷歌Chrome上都可以。为什么这样,我能解决它吗?

编辑:

我刚刚发现从文件加载的链接和js工作。例如:

<a href="page_b.html">link</a>

打开右页。但是css喜欢:

<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
    <link rel="stylesheet" href="css/style.css"/>
</head>

坏了。

编辑:

不幸的是,这是cordova项目中的一个漏洞:https://issues.apache.org/jira/browse/CB-6532

2 个答案:

答案 0 :(得分:0)

请参阅https://stackoverflow.com/a/22801512/276648

我最终使用相对路径(例如../../Documents/MyApp/temporary/1/)而不是完整路径(即cdvfile://localhost/temporary/1/)来修复iOS中的CSS问题。

答案 1 :(得分:0)

您似乎遇到了CB-6532。我只是提出了一个修复的拉取请求 - 你可以暂时使用我的fork,直到它被接受为止:

https://github.com/loufranco/cordova-plugin-file

要使用它,请执行

  cordova plugin remove org.apache.cordova.file
  cordova plugin add https://github.com/loufranco/cordova-plugin-file.git

如果接受拉取请求,请记得撤消。