2013-04-08 2 views
0

Я использую следующий код для создания нового элемента DOM и назначения значения.nodeValue остается null после присвоения номера

var xCoordElem = document.createElement("xCoord"); 
xCoordElem.nodeValue=Canvas.paper.someCircle.attr('cx'); 

Canvas.paper.someCircle, где производится с использованием

Canvas.paper = Raphael(xOffset,yOffset,width,height); 
Canvas.someCircle = Canvas.paper.circle(x, y, radius); 

Я тогда называть

alert("Canvas.paper.someCircle .attr('cx')=" + Canvas.paper.someCircle .attr('cx'); 
alert("xCoordElem.nodeValue=" + xCoordElem.nodeValue); 

Первое окно предупреждения дает "Canvas.paper.someCircle .attr ('сх') = 562" в то время как второе поле предупреждения дает «xCoordElem.nodeValue = null». Я тестирую это на FireFox, используя FireBug и FireBug также говорит, что xCoordElem.nodeValue=null.

Я надеюсь сделать xCoordElem.nodeValue значение Canvas.paper.someCircle .attr('cx') (в данном случае 562) вместо null.

+0

Поместите первую коробку предупреждения непосредственно перед второй строке вашего кода выше. см., что отображается в окне предупреждения – Anoop

+0

Лучше использовать 'console.log (...)', а не 'alert (...)'. –

+0

Сушиль. Я не уверен, что поставить. XCoordElem отлично выглядит в FireBug. Это поле nodeValue является проблематичным. Спасибо, Питер. – OtagoHarbour

ответ

1

Используйте метод .prop() вместо attr. Начиная с jQuery 1.6, метод .attr() возвращает undefined для атрибутов, которые не были установлены. Чтобы получить и изменить свойства DOM, такие как проверенные, выбранные или отключенные состояния элементов формы, используйте метод .prop(). - из документации JQuery API.

http://api.jquery.com/attr/

+0

Я пробовал xCoordElem.nodeValue = Canvas.paper.someCircle.prop ('cx'); и консоль JS вернулась «Canvas.paper.someCircle.prop не является функцией». Спасибо, Питер. – OtagoHarbour

+0

Похоже, я могу обойти эту проблему, используя xCoordElem.textContent = Canvas.paper.someCircle.attr ('cx') ;. Таким образом, число, которое я хочу, сохраняется в текстовой форме в элементе. Спасибо, Питер. – OtagoHarbour

Смежные вопросы