Перемещение элементов
Всем здрасте) Помогите выявить ошибку, пожалуйста. Пишу драг&дроп приложение, но возникают проблемы..
function func(source) { return new fun(source); } function fun(source) { this.source = source; this.obj = document.getElementById(this.source); return this; } fun.prototype.move = function() { moveObj = this.obj; moveObj.onmousedown = function(e) { var self = this; e = getEvent(e); var coords = getCoords(this); var shiftX = e.pageX - coords.left; var shiftY = e.pageY - coords.top; document.onmousemove = function(e) { moveObj.style.position = 'absolute'; moveObj.style.left = e.pageX - shiftX + 'px'; moveObj.style.top = e.pageY - shiftY + 'px'; } } document.onmouseup = function() { document.onmousemove = moveObj.onmouseup = null; } moveObj.ondragstart = function() { return false; } } window.onload = function() { func('block1').move(); func('block2').move(); } А именно проблемы в том, что элемент с ид block1 не перемещается никуда. А с block2 всё нормально. Не пойму в чём проблема.. |
Ну вы и нагородили.
Попробуйте убрать func('block2').move(); и подумайте почему же функция работает только с последним элементом, поменяйте их местами и тоже подумайте:) |
Skipp,
насчёт того, что я нагородил, это по дефаулту у меня пока что)) А вот из-за чего у меня проблемы я пока понять не могу( |
Skipp,
да и местами менял их. Работает только 2й. Возможно последний вызов функции переопределяет this.obj . Но если это так, тогда как же мне это исправить? |
Где var???
var moveObj = this.obj; |
nikita.mmf,
:dance: УРА!!))) Спасибо за помощь:thanks: |
Часовой пояс GMT +3, время: 15:10. |