如何使用 javascript 读取 epub 中文件的内容
How to read the contents of a file inside an epub using javascript
我需要在 epub3 书籍的一页内阅读同一 epub 的其中一个文件的内容,这是一些要用 javascript 函数处理的数据。
不幸的是,Javascript 出于安全原因阻止加载本地文件。 (例如文件 API 只允许加载上传的用户文件)。
但对于我来说,在 epub3 的上下文中,它是有道理的,我在 IDPF EPUB3 文档中没有找到与此主题相关的任何信息。
有什么想法吗?
好的。让我们澄清一下:
我有一个具有以下结构的 epub3:
<root>
META-INF
...
OEBPS
pages
page.xhtml
data
data.xml
在page.xhtml中,我想在Javascript中这样写:
<script type="text/javascript">
//pseudo code
var indata = readAsText("../data/data.xml"); // how to write that ???
var outdata = myfunction(indata);
</script>
找到了多年的解决方案,并意识到它从未得到解答:
所以回答我自己的问题 ;-)
<script type="text/javascript">
/* Load the file using HTTP GET */
$.get( "../data/data.xml", function( indata ) {
var outdata = myfunction(indata);
}, 'text');
</script>
我需要在 epub3 书籍的一页内阅读同一 epub 的其中一个文件的内容,这是一些要用 javascript 函数处理的数据。 不幸的是,Javascript 出于安全原因阻止加载本地文件。 (例如文件 API 只允许加载上传的用户文件)。
但对于我来说,在 epub3 的上下文中,它是有道理的,我在 IDPF EPUB3 文档中没有找到与此主题相关的任何信息。
有什么想法吗?
好的。让我们澄清一下:
我有一个具有以下结构的 epub3:
<root> META-INF ... OEBPS pages page.xhtml data data.xml
在page.xhtml中,我想在Javascript中这样写:
<script type="text/javascript">
//pseudo code
var indata = readAsText("../data/data.xml"); // how to write that ???
var outdata = myfunction(indata);
</script>
找到了多年的解决方案,并意识到它从未得到解答: 所以回答我自己的问题 ;-)
<script type="text/javascript">
/* Load the file using HTTP GET */
$.get( "../data/data.xml", function( indata ) {
var outdata = myfunction(indata);
}, 'text');
</script>