gpt4 book ai didi

javascript - SVG 嵌入未加载或无法通过 contentDocument 访问

转载 作者:太空宇宙 更新时间:2023-11-04 16:31:45 26 4
gpt4 key购买 nike

我已经在一个简单的问题上苦苦挣扎了几个小时,尽管它似乎已经在这里描述过:How to access SVG elements with Javascript

我无法访问嵌入标记中加载的外部 svg 文件的元素,即使我等待 div 或整个窗口加载(我已经尝试了几个“加载监听器”)

我已将 html 文件简化为这几行,以向您展示问题:

<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Desperate demo</title>
</head>
<body>

<div id="content">
<embed class="emb" id="maptest" type="image/svg+xml" src="star.svg">
</div>
<script type='text/javascript'>
window.onload = initAll;
function initAll(){
var mySVG = document.getElementById("maptest");
var svgDoc = mySVG.contentDocument;
console.log(svgDoc);
}
</script>
</body>
</html>

基本上,日志在 contentDocument 属性调用时返回“null”或“undefined”,就好像 DOM 中根本没有加载 svg 一样。

你能看到我错过了什么吗?如果我在 html 中写入整个 svg 标记而不是调用外部文件,它也不起作用...

最佳答案

尝试 getSVGDocument() 看看它是否对您有帮助:

window.onload = initAll;
function initAll(){
var mySVG = document.getElementById("maptest");
console.log(mySVG);
var svgDoc = mySVG.getSVGDocument();
console.log(svgDoc);
}

关于javascript - SVG 嵌入未加载或无法通过 contentDocument 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39736290/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com