在SVG加载之后修改它
Modifying SVG after it has been loaded
如何在浏览器加载SVG文件后修改它,最好是通过jquery?一个简单的例子是按下按钮,SVG元素的颜色就会改变。任何文档也会有帮助。
编辑:这个链接帮助很大:w3.org/Graphics/SVG/IG/resources/svgprimer.html # SVG_in_HTML
您不能"修改"SVG文件(除非在服务器上更改它们)。SVG文件定义了SVG对象的集合,如果愿意,每个对象都可以用ID标识。这些对象可以像任何DOM元素(例如setAttribute等)一样被JavaScript操作。查看http://www.w3.org/TR/SVG11/types.html#BasicDOMInterfaces查看DOM接口。注意,SVGElement扩展了Element,这是基本的DOM元素类型。
编辑:简单的例子:
<html>
<body>
<input type="button" onclick="doSVGThing()" value="change">
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<rect id="aRect" x="10" y="10" height="100" width="100"
style="stroke:#ff0000; fill: #9999ff"></rect>
</svg>
<script type="text/javascript">
function doSVGThing() {
var r = document.getElementById('aRect');
r.setAttribute('style', 'stroke: #00ff00; fill: #99ff99');
}
</script>
</body>
</html>
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 在chrome.tabs.onCreated之后加载HTML页面
- 在Safari执行javascript之前对其进行修改
- 在Jquery detachment()和appendTo()之后定位元素
- AngularJS:ng之后,重复$scope值未按预期更新
- 为什么元素的宽度在页面加载之后和那一刻之后不同
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 没有在Angular应用程序中定义firebase(在firebase迁移之后)
- 用Javascript修改内部标记的CSS规则
- Javascript复选框函数:;缺少:在属性id之后"
- 在刚刚调用的append函数之后,jquery.height()不会返回实际值
- 绑定Range输入以修改样式
- 可以从Chrome扩展修改窗口对象吗
- jQuery滚动器插件修改
- 将函数从onclick修改为onload
- 在 WebSocket.send() 之后修改缓冲区是否安全?
- 使用JavaScript修改CSS选择器:之后
- 在SVG加载之后修改它
- 如何修改选定的选项文本&在下一个选项之后恢复文本
- “scroll"在js修改了input's的值之后,到input的末尾