У меня есть модальное окно mootools.
Содержимое окна iFrame.
Я перетаскиваю окно изнутри iFrame. (он сильно затягивается, но сильно трясется во время перетаскивания)Странное поведение перетаскивания окна
Ссылка для связи here.
Вопрос:
- почему это странное поведение сопротивления?
- iFrame оставляет свою границу, пустую, в месте происхождения. Как этого избежать?
Благодарим за идеи/советы по поиску проблемы.
Мой код:
window.addEvent('domready',function() {
document.getElementById('iframe2_footer').addEventListener('mousedown', mouseDown, false);
window.addEventListener('mouseup', mouseUp, false);
});
function mouseUp()
{
window.removeEventListener('mousemove', divMove, true);
}
function mouseDown(e){
var div = parent.document.getElementById("price_info");
offY= e.clientY-parseInt(div.offsetTop);
offX= e.clientX-parseInt(div.offsetLeft);
window.addEventListener('mousemove', divMove, true);
}
function divMove(e){
var div = parent.document.getElementById("price_info");
div.style.position = 'absolute';
div.setPosition({ x: e.clientX-offX });
div.setPosition({ y: e.clientY-offY });
}
EDIT: Просто сделал некоторые полено в e.clientX
и e.clientY
(Спасибо @Nils за идею) и получил это:
...
450 -168
340 -218
460 -173
347 -221
468 -176
355 -224
478 -179
364 -226
483 -182
374 -229
...
Довольно большие шаги. Любая идея почему?
Хе-хе хорошая реализация, но я очень сомневаюсь, что вы сможете это исправить - это выглядит как неожиданные последствия неожиданного использования для механизма рендеринга. Я бы серьезно подумал о том, чтобы реализовать решение Ajax и решить все проблемы за один раз, это похоже на тупиковый путь для меня. –
добавьте в свой код console.log (e.clientY, e.clientX), чтобы проверить, что значения выглядят ОК. Возможно, вам придется изменить контекст в Chrome, чтобы проверить iFrame. – Nils
Хорошая идея @ Нилс, просто сделал это и добавил информацию по этому вопросу. Как вы думаете? – Sergio