当使用<script type="text/plain" src="http://..."></script>
时,URL指向纯文本文件,有没有办法在JavaScript中访问文件的内容?该文件已传输到浏览器,但是innerHTML
元素的script
属性的值未更改(它保留为空字符串)。在DOM中检查元素节点似乎并没有揭示可以找到接收到的内容的任何属性。
我知道可以使用XMLHTTPRequest来代替,但是我对为什么浏览器以我描述的方式获取数据但似乎没有提供任何访问权限的问题感兴趣。
最佳答案
首先,text
的HTMLScriptElement
属性是访问内联<script>
元素的文本的首选方法。 DOM-Level-2和HTML5: 4.11.1均指示脚本应具有属性text
,该属性包含脚本内部文本:
由于<script>
元素为空(您指定了外部源),因此text
,textContent
和innerHTML
为空。这是因为text
属性仅在嵌入式脚本中设置:
因此,无法使用此方法包括外部text/plain
。
也可以看看: