Ответ 1
Здесь работает отлично (с jQuery 1.6.2): http://jsfiddle.net/niklasvh/k3Grd/
Обязательно вызовите его, когда DOM готов:
$(function(){
$('#trns').attr('transform', 'rotate(60,50,50)');
});
Я пытаюсь повернуть изображение через 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 градусов при загрузке страницы. Кроме того, когда я изменяю 90
на другое число на вкладке HTML firbug, поворот изменяется соответственно. Но когда я пытаюсь изменить значение с помощью jQuery, ничего не происходит:
$('#trns').attr('transform', 'rotate(60, 50,50)');
Что делает firebug в моей строке attr
?
Здесь работает отлично (с jQuery 1.6.2): http://jsfiddle.net/niklasvh/k3Grd/
Обязательно вызовите его, когда DOM готов:
$(function(){
$('#trns').attr('transform', 'rotate(60,50,50)');
});
Очень странно, похоже, это работает
$('#trns')[0].setAttribute('transform','rotate(20,50,50)')
Кроме того, если вы посмотрите на $('# trns'). attr ('transform'), вы получаете объект. Не хватает времени, чтобы изучить это сейчас.
Если вы используете jquery >= 1.6, попробуйте использовать prop
вместо attr
.
Надеюсь это поможет. Приветствия
.attr() работает в 3.1.1, как этот
.attr({ style: "prop : val; prop : val; prop : val" })
Это может быть проблема с проблемами версии.