jQuery SVG 插件:如何显示预定义的 SVG 图像
我正在尝试使用 jQuery SVG (http://keith-wood.name/svg.html) 在 HTML 页面中显示 .svg 文件。它应该很简单,但我无法让它工作。
我得到的唯一输出是一个大盒子(这是我用 CSS 设计的 div)和盒子里的“加载错误:”字样。我已经在 Chrome 和 Firefox 中尝试过了。在 Chrome 中,我必须将其运行为“chromium-browser --disable-web-security”。
这是代码:
<html>
<head>
<style type="text/css">
#canvas { width: 100%; height: 100%; border: 1px solid #484; }
</style>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script type="text/javascript" src="jquery.svg.min.js"></script>
<script type="text/javascript" src="jquery.svgdom.min.js"></script>
<script type="text/javascript" src="jquery.svganim.min.js"></script>
<script type="text/javascript">
$(document).ready ( function () {
$('#canvas').svg({loadURL: 'lion.svg'});
});
</script>
</head>
<body>
<div id='console'></div>
<div id='canvas'></div>
</body>
I am trying to display an .svg file in a HTML page using jQuery SVG (http://keith-wood.name/svg.html). It should be pretty simple but I can not get it to work.
The only output I get is a big box (which is my div styled by CSS) and the words, "Error loading:" in the box. I've tried it in Chrome and Firefox. In Chrome I had to run it as "chromium-browser --disable-web-security".
Here's the code:
<html>
<head>
<style type="text/css">
#canvas { width: 100%; height: 100%; border: 1px solid #484; }
</style>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script type="text/javascript" src="jquery.svg.min.js"></script>
<script type="text/javascript" src="jquery.svgdom.min.js"></script>
<script type="text/javascript" src="jquery.svganim.min.js"></script>
<script type="text/javascript">
$(document).ready ( function () {
$('#canvas').svg({loadURL: 'lion.svg'});
});
</script>
</head>
<body>
<div id='console'></div>
<div id='canvas'></div>
</body>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
需要注意的一件事是,url 是使用
jquery.ajax
调用加载的。所以我认为如果 lion.svg 是本地的,它就不会起作用。对我来说,如果我这样做,它就会起作用:One thing to note is that the url is loaded using a
jquery.ajax
call. So I don't think it will work if the lion.svg is local. For me it works if I do:您不必使用脚本来包含独立的 svg 文件,但如果您愿意,也可以这样做(如示例所示)。就我个人而言,我发现通过引用包含 svg 更干净/更容易(例如
这里有一些包含 svg 的更多方法(来自SVG Primer),不需要使用脚本。
You don't have to use script to include the standalone svg file, but you can if you want to (as shown by your example). Personally I find it cleaner/easier to just include the svg by reference (e.g
<object data="my.svg">
), but it's up to you to choose whichever way you want.Here are some more ways to include svg (from the SVG Primer), which don't require the use of scripting.