Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Связь SVG и JS (https://javascript.ru/forum/misc/20828-svyaz-svg-i-js.html)

Questioner 18.08.2011 23:47

Связь SVG и JS
 
Почему когда в SVG я обращаясь из жабыскрипта к Х - координате прямоугольника, я получаю "[object SVGAnimatedLength]", а не 10(координату Х прямоугольника) и с другими св-вами тоже самое?
var mw=window.open('','','');
var mwTxt='<svg width=1000 height=1000>\n'
mwTxt+='<rect x=10 y=10 width=980 height=980 onclick="f(this)"></rect>\n'
mwTxt+='<foreignObject>\n'
mwTxt+='<script>\n'
mwTxt+='function f(g) {\n'
mwTxt+="alert('x='+g.x+';\\ny='+g.y)\n}\n"
mwTxt+='</script>\n'
mwTxt+='</foreignObject>\n'
mwTxt+='</svg>'
mw.document.write (mwTxt);

B@rmaley.e><e 19.08.2011 09:30

Ну возьмите нужный атрибут этого объекта (baseVal или animVal).

Questioner 19.08.2011 11:52

Немного помогло... Правда, теперь появляется объект [object SVGLength]. , есть ли какие - нибудь еще св-ва у [object SVGAnimatedLength] или у [object SVGLength]?

B@rmaley.e><e 19.08.2011 18:44

Спецификация.

Solovei95 23.08.2011 16:49

Ты так не сможешь!
Придеться делать так:
var elem1 = document.createElement("svg");
elem1.setAttribute("width",100);
elem1.setAttribute("height",100);
var elem2 = document.createElement("rect");
...
elem2.appendChild(elem1);

Кароче! Тебе нужен целый туториал по DOM.

Solovei95 23.08.2011 16:51

Иначе тебя не вытащишь!


Часовой пояс GMT +3, время: 17:52.