Перемещение элементов
Всем здрасте) Помогите выявить ошибку, пожалуйста. Пишу драг&дроп приложение, но возникают проблемы..
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, время: 18:04. |