你是否有机会在当地进行测试 file:// Chrome上的网址?如果是这样,请尝试使用Firefox。 Chrome对待 file:// 网址为不同的域名,不允许您通过该网址访问其内容 contentDocument 属性。
file://
contentDocument
以下示例适用于我在Firefox中。为清楚起见,我已将某些变量重命名。
<!DOCTYPE html> <html> <head> <title>SVG + Object test</title> <meta charset="UTF-8" /> </head> <body> <object data="kiwi.svg" type="image/svg+xml" class="index-modificat" ></object> <script> var objectElem = document.querySelector("object"); objectElem.addEventListener("load", function () { contentDoc = objectElem.contentDocument; svg = contentDoc.documentElement; console.log("svg = ",svg); }); </script> </body> </html>