我正在尝试通过svg的transform
旋转图像。这是我的代码:
<svg width="100" height="100">
<image id="trns" transform="rotate(90,50,50)" width="100" height="100" xlink:href="logo.png"/>
</svg>
当页面加载时,这会成功将logo.png
旋转90度。此外,当我在firbug的HTML标签中将90
更改为其他数字时,旋转也会相应更改。但是当我尝试使用jQuery更改值时,没有任何反应:
$('#trns').attr('transform', 'rotate(60, 50,50)');
我的attr
行没有萤火虫做什么?
答案 0 :(得分:7)
在这里工作正常(使用jQuery 1.6.2): http://jsfiddle.net/niklasvh/k3Grd/
确保在DOM准备就绪后调用它:
$(function(){
$('#trns').attr('transform', 'rotate(60,50,50)');
});
答案 1 :(得分:4)
确实非常奇怪,这似乎有效
$('#trns')[0].setAttribute('transform','rotate(20,50,50)')
另外,如果你看看$('#trns')。attr('transform'),你就会得到一个对象..现在没有足够的时间来研究它。
答案 2 :(得分:3)
如果您使用的是jquery&gt; = 1.6,请尝试使用prop
代替attr
。
希望这可以帮助。干杯
答案 3 :(得分:0)
.attr()在3.1.1中像这样工作
.attr({ style: "prop : val; prop : val; prop : val" })
这可能是解决版本问题的方法。