javascript - 使用 CSS 样式动态加载 XML

标签 javascript css xml html dom

我想将 XML 文件及其 CSS 样式表加载到 textareadiv 中。每个 XML 文件都有正确显示它的 CSS 样式表:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="first.css"?>
<?xml-stylesheet href="second.css"?>
<book>
  <sentence>
  !!! SNIP !!!

如果我通过在地址栏中键入文件的 URL 将文件直接加载到 Web 浏览器中,它会正确显示,包括所有样式。现在我想以同样的方式显示它,动态加载它。

我已经尝试了几种变体,例如

<textarea id="display">
</textarea>

$.ajax({
    type: "GET",
    url: "https://raw.githubusercontent.com/someplace/my.xml",
    dataType: "text",
    success: function(xml) {
        alert("GET succeeded")
        var xmlDoc = $.parseXML(xml);
        document.getElementById("display").append(xmlDoc.childNodes);    
    }
}); 

我不知道如何将样式动态应用到已解析的 XML 文档并显示它。我不想将其转换为 HTML,我只想显示已在 Web 浏览器中正确显示的相同文档。

有人知道怎么做吗?

最佳答案

XML 和 CSS 的要点在于它可以在浏览器中很好地呈现。但为什么在 textarea 中?您可以使用 iframe 标记来显示它,如果显示它的标记不太重要的话。通过更改 iframesrc 属性,您可以动态加载它。

关于javascript - 使用 CSS 样式动态加载 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44444274/

相关文章:

css - 高级 CSS 选择器 - 根据样式选择

HTML & CSS : Adjust background rectangle on text so it does not span entire webpage

jquery - 如何在没有 GridView 生成的 thead 的情况下滚动时将表头设置为固定

在 C/C++ 中将字符串转换为不同的数据类型

c++ - 64 位 libjingle 无法解析登录 XML 并出现 expat 错误 : ERROR_INVALID_TOKEN

javascript - 正则表达式删除所有重复的字符

javascript - 箭头切换关闭

javascript - Vimeo 视频灯箱

javascript - 使用 intellij Ultimate 调试 Angular cli 项目

python - 如何迭代解析 zipfile 对象