2013-11-21 3 views
0

Я делаю игру, где есть объект с перетаскиванием, и я хотел бы сохранить его фактическое место в реальном времени. Мне сказали, что я должен использовать getComputedStyle, но он работает только в случае, если я используюКак я могу обратиться к определенному элементу document.getComputedStyle?

var computedStyle = getComputedStyle(document.body, null) 

Я имею в виду, если я добавляю

document.write(computedStyle.marginTop) 

он работает и записывает значение верхнего края. Но мне нужно место элемента div. Я попытался использовать

var place = document.getElementById("draggable"); 
    var computedStyle = getComputedStyle(place, null); 
    document.write(computedStyle.marginTop); 

но он ничего не делает. Я также пробовал

var computedStyle = getComputedStyle(document.getElementById("draggable"), null); 

но он также не работал.

Может кто-нибудь, пожалуйста, помогите мне, как мне обратиться к элементу div с идентификатором «draggable»?

+0

* «но он ничего не делает» * Он делает, если у вас есть элемент с 'id''" draggable "'. Если вы этого не сделаете, то, конечно, ничего не делает. Обратите внимание, что 'id' и 'class'es - это совершенно разные вещи. –

+0

* «Может кто-нибудь, пожалуйста, помогите мне, как я должен ссылаться на элемент div с id« draggable »?» * Работает для меня: http://jsbin.com/igecuSAc/1/edit –

ответ

-1

Документах разработчик на https://developer.mozilla.org/en-US/docs/Web/API/Window.getComputedStyle, кажется, указывают, что следующие удастся:

var elem1 = document.getElementById("elemId"); 
var style = window.getComputedStyle(elem1, null); 

Итак, попробуйте добавить window. к вашей статье getComputedStyle, и убедитесь, что ваш DIV назван правильно.

Если ни одна из этих двух вещей не помогает, проверьте свою консоль javascript на наличие ошибок.

+0

Все свойства 'window' являются глобальными, использование «окна» в этом случае является избыточным (хотя это лучше всего для ясности). –

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