Как сделать перемещение div мышкой (js) с полем textarea, но так, чтобы можно было редактировать текст в textarea?
<script>
function $(v) {
return(document.getElementById(v));
}
function agent(v) {
return(Math.max(navigator.userAgent.toLowerCase().indexOf(v),0));
}
function xy(e,v) {
return(v?(agent('msie')?event.clientY
+document.body.scrollTop:e.pageY):(agent('msie')?event.clientX
+document.body.scrollTop:e.pageX));
}
function dragOBJ(d,e) {
function drag(e) {
if(!stop){
d.style.top=(tX=xy(e,1)+oY-eY+'px');
d.style.left=(tY=xy(e)+oX-eX+'px');
}
}
var oX=parseInt(d.style.left),oY=parseInt(d.style.top),eX=xy(e),eY=xy(e,1),tX,tY,stop;
document.onmousemove=drag;
document.onmouseup=function(){
stop=1;
document.onmousemove='';
document.onmouseup='';
};
}
</script>
<div style="position: relative; top: 0; left: 0;" onmousedown="dragOBJ(this,event); return false;">
<textarea>bla-bla</textarea>
</div>
В div'е много элементов и нужно сделать так, чтобы их все можно было перемещать мышкой в произвольное место, но при этом нужно, чтобы поле ввода принимало фокус (и перемещалось с другими элементами). Вообще, возможно ли такое?
Примечание:
Как минимум нужно сохранить возможность выделять текст в textarea.
Примечание:
Спасибо за помощь, всё работает так как задумано.
> Судя по коду выше (не вижу других элементов)
Прошу прощения если будет как-то грубовато, но какой смысл показывать код, который к делу не относится? Тем более я js плохо понимаю и мой говнокод мало кому будет интересен. Да и просто даже стыдно показывать, что там наворотил :).
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.