当使用<script type="text/plain" src="http://..."></script>时,URL指向纯文本文件,有没有办法在JavaScript中访问文件的内容?该文件已传输到浏览器,但是innerHTML元素的script属性的值未更改(它保留为空字符串)。在DOM中检查元素节点似乎并没有揭示可以找到接收到的内容的任何属性。

我知道可以使用XMLHTTPRequest来代替,但是我对为什么浏览器以我描述的方式获取数据但似乎没有提供任何访问权限的问题感兴趣。

最佳答案

首先,textHTMLScriptElement属性是访问内联<script>元素的文本的首选方法。 DOM-Level-2HTML5: 4.11.1均指示脚本应具有属性text,该属性包含脚本内部文本:



由于<script>元素为空(您指定了外部源),因此texttextContentinnerHTML为空。这是因为text属性仅在嵌入式脚本中设置:



因此,无法使用此方法包括外部text/plain

也可以看看:

  • W3C: HTML5: 4.11.1 The script element: text attribute和游戏 map 示例:

  • 10-05 20:58
    查看更多