Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.11.2008, 13:46
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

Как мышкой перемещать Div блок?
имеется DIV слой, можно ли при помощи CSS чтобы этот блок перемещался ?
то есть берём мышкой за некую часть этого блока и перемещаем, возможно так?
Ответить с цитированием
  #2 (permalink)  
Старый 29.11.2008, 13:49
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

CSS, вроде, нельзя.
Ответить с цитированием
  #3 (permalink)  
Старый 29.11.2008, 14:01
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

в принципе не обязательно именно на CSS, можно и на JS, только как это сделать, никто не знает?
Ответить с цитированием
  #4 (permalink)  
Старый 29.11.2008, 14:12
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Создаем абсолютно позиционированный блок. По событию onmousedown начинаем отслеживать onmousemove на всем документе и изменять top и left нашего блока в соответствии с координатами мыши. По событию onmouseup прекращаем все действия.
Ответить с цитированием
  #5 (permalink)  
Старый 27.03.2009, 18:15
Новичок на форуме
Отправить личное сообщение для linbis Посмотреть профиль Найти все сообщения от linbis
 
Регистрация: 27.03.2009
Сообщений: 4

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=''; };

}

<div style="position: relative; top: 0; left: 0" onmousedown="dragOBJ(this,event); return false;">test</div>
Ответить с цитированием
  #6 (permalink)  
Старый 28.03.2009, 02:00
-
Отправить личное сообщение для twolf Посмотреть профиль Найти все сообщения от twolf
 
Регистрация: 16.07.2008
Сообщений: 207

ого темку подняли...
linbis, а в браузерах попробовали использовать свой код?
Ответить с цитированием
  #7 (permalink)  
Старый 28.03.2009, 06:10
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

ухты, а неплохо кстати. Я проверял на всех браузерах(хром, лиса, опера, IE6.0), единственное во всех кроме IE6.0, почемуто когда берёшь объект мышкой, в нижней части браузера появляется прокрутка, как будто по ширине не влазиет, в IE6.0 всё в порядке с этим.
Ответить с цитированием
  #8 (permalink)  
Старый 28.03.2009, 14:09
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

вопрос нижней прокрутки отпал, сделал бокс, и прокрутки не стало. Прокрутка появлялась когда чисто один текст был. Сейчас ещё бы одну проблему решить, плавающий этот блок почемуто всегда под тегом списка <select> при перемещении блока список его закрывает, как это сделать можно?
вроде слышал что както можно через фрэймы решить вопрос, или может есть другой вариант, хотя если можно пример по фрэймам не отказался бы
Ответить с цитированием
  #9 (permalink)  
Старый 29.03.2009, 13:57
Аспирант
Отправить личное сообщение для Simon Посмотреть профиль Найти все сообщения от Simon
 
Регистрация: 25.11.2008
Сообщений: 31

ну ктонить, подскажите плизз.. как сделать чтобы перемещаемый блок был выше всех элементов?
Ответить с цитированием
  #10 (permalink)  
Старый 29.03.2009, 21:07
-
Отправить личное сообщение для twolf Посмотреть профиль Найти все сообщения от twolf
 
Регистрация: 16.07.2008
Сообщений: 207

z-index
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При клике ссылки, открыть DIV блок, и при клике ещё раз, закрыть его Simon Общие вопросы Javascript 59 28.05.2017 18:31
HTML-кнопка как двойной щелчок мышкой Ыукпуй Общие вопросы Javascript 5 20.11.2008 16:18