javascript - Snap.SVG 中的 Clone() 随机失败

标签 javascript snap.svg

我遇到一个问题,clone() 有时在 Element.insertAfter 内失败,因为 el.node.parentNode 为 null。

顶级 html 内部

Snap.load(path, function (data) {
    window.picto_svg = data.select('svg');
    ...
    jQuery('#content').load('interior.html');
});

内部.html

$(document).ready(function () {
    var svg_copy = picto_svg.clone();
});

我只是运气好,它通常不会失败吗?我不想在克隆之前显示 svg。我最终克隆了它并多次调整克隆,所以只想保留一个纯净的。

最佳答案

我可能会在 jsfiddle 上发布更多代码,因为没有足够的信息来确定。

但是,我的第一个猜测是您需要移动这条线..

var svg_copy = picto_svg.clone();

在 Snap.load 函数内部。问题可能是您试图在加载文件之前创建克隆,因此有时可以工作,有时则不行。

也不清楚您是否附加 svg,但首先我会确保依赖于正在加载的文件的所有函数调用和变量分配都是从加载函数调用的。

关于javascript - Snap.SVG 中的 Clone() 随机失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35715302/

相关文章:

javascript - 捕捉 SVG : Dragging group doesn't update elements

javascript - 为什么这个箭头功能在 IE 11 中不起作用?

javascript - 双击添加的选择选项不起作用

javascript - 从 Gson 到 JavaScript

javascript - 使用 Snap.svg (Javascript) 不可重叠的 Draggables

angularjs - 如何通过 Angular 对齐一起使用 Snap.svg 和 Snap.js?

javascript - 使用 svg 和 javascript 沿着圆形路径对文本进行动画处理

javascript - 限制 {{#each a in b}} 的结果

javascript - 400 响应 CORS 预检

css - Snap SVG/CSS 悬停是从左到右而不是从下到上?