首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用svg.js加载SVG文件

用svg.js加载SVG文件
EN

Stack Overflow用户
提问于 2018-06-12 13:56:34
回答 2查看 2.2K关注 0票数 0

我在其中看到了与这个主题相关的几个问题,并且遵循了这些问题(Loading a SVG file with svg.js),但是加载svg文件的尝试没有成功。

代码语言:javascript
复制
__this.canvas = SVG('canvas').size(500, 500);
$.get('/cuentos/Rapunzel/prueba.svg', function(data) {
     __this.data = data;
     console.log(__this.data);
     __this.canvas.svg(__this.data);
});

__this.canvas是以下列方式导入的svgjs.Doc类型:

代码语言:javascript
复制
import SVG from './node_modules/svg.js/svg.js';
declare var svgjs: (domElement: HTMLElement) => svgjs.Library;

错误:

有件事我做错了或者错过了。

有什么帮助吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-12 14:20:39

JQuery的$.get (对于SVG )默认返回一个DOM对象表示SVG。但是,SVG.js的svg函数需要一个字符串。

您只需强制JQuery返回这样的字符串:

代码语言:javascript
复制
$.get('/cuentos/Rapunzel/prueba.svg', function(data) {
   __this.data = data;
   console.log(__this.data);
   __this.canvas.svg(__this.data);
}, 'text');

PS:我打开了一个针对SVG.js的PR以显示正确的错误消息:https://github.com/svgdotjs/svg.js/pull/870

票数 0
EN

Stack Overflow用户

发布于 2019-01-07 16:43:00

使用jQuery,此表单在2.7.1和3.0.x测试中都有效。

代码语言:javascript
复制
    var svgp = SVG($('#<name of svg>')[0]);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50819006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档