使用 jQuery 修改 svg 文件 [英] Modify a svg file using jQuery
本文介绍了使用 jQuery 修改 svg 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个带有一些形状和一些文本的 svg 文件.我想在运行时修改 svg,以便某些形状可以改变颜色,而某些文本可以改变其内容.
假设我在外部 svg 文件中只有两个元素:
circle1:一个带有id的蓝色实心圆圈
text1:包含--"和该 ID 的文本
现在我可以在我的 html 中查看文件
<object data="Sample.svg" type="image/svg+xml" width="200" height="200" id="svg1"></object>
从图像附近的按钮,使用 jQuery,我可以捕获 onClick 事件:我想用红色填充 cicle 并将文本更改为hello word".
我该怎么做?有基于 jQuery 的解决方案吗?
我找到了 jquery.svg 插件,但似乎只能修改运行时创建的文档.
谢谢.
解决方案
完成!
我终于找到了关于 jQuery.svg 的文档.以及 svg 本身.
让我们从代码开始:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><头><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title></title><script type="text/javascript" src="../js/jquery-1.5.min.js"></script><script type="text/javascript" src="jquery.svg/jquery.svg.js"></script>头部><身体><script type="text/javascript">$(document).ready(function(){$("#svgload").svg({加载:函数(){var svg = $("#svgload").svg('get');svg.load('Red1.svg', {addTo: true, changeSize: false});},设置:{}});$('#btnTest').click(function(e){var rect = $('#idRect1');rect.css('填充','绿色');//rect.attrib('fill','green');var txt = $('#idText1');txt.text('FF');});});</脚本><div id="svgload" style="width: 100%; height: 300px;"></div><div id="btnTest">点我!