Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 11.12.2012, 16:36
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

Сообщение от skfyann
Чтобы разобраться в чем-то
согласен, но подключить jQuery это было лишь предложение, такое же как и посмотреть в учебнике!
Ответить с цитированием
  #12 (permalink)  
Старый 18.12.2012, 21:20
Новичок на форуме
Отправить личное сообщение для Nicki-rurg Посмотреть профиль Найти все сообщения от Nicki-rurg
 
Регистрация: 02.12.2012
Сообщений: 5

А можешь свой пример скинуть,посмотреть)
Ответить с цитированием
  #13 (permalink)  
Старый 19.12.2012, 08:19
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Вот мой рабочий вариант, проверял в опере и хроме. Думаю тебе придётся его доработать.

<div style="width:200px; height:500px; background:#000; position:fixed"><div onmousedown="Drag(this)" style="width:200px; height:50px; cursor:move; background:red"></div></div>

<script>
var DragZ = 100;

function Drag(a)
{
   var b = 1, c = a.parentNode.style, e = this, f = 1, g, h;
   DragZ++;
   c.zIndex = DragZ;
   a.onmousemove = function()
   {
      if(b)
      {
         if(f)
         {
            g = e.event.offsetX;
            h = e.event.offsetY;
            f = 0;
         }
         c.marginLeft = e.event.clientX-g;
         c.marginTop = e.event.clientY-h;
      }
   }
   window.onmouseup = function()
   {
      b = 0;
   }
}
</script>
Ответить с цитированием
  #14 (permalink)  
Старый 23.12.2012, 17:15
Новичок на форуме
Отправить личное сообщение для Nicki-rurg Посмотреть профиль Найти все сообщения от Nicki-rurg
 
Регистрация: 02.12.2012
Сообщений: 5

Спасибо)все классно)но все таки хотелось бы понять почему мой вариант не работает)
Ответить с цитированием
  #15 (permalink)  
Старый 24.12.2012, 17:30
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

Nicki-rurg, у вас в коде ошибка div.offsetleft, "Left" с маленькой буквы. Исправленный ваш код:
<div style="width:200px; height:200px; background:#345; position:absolute" onMouseDown="move(event, this)"></div>
<script language="javascript">
function move(e,div){
	document.onMouseDown = function(){return false}
	div.style.cursor = 'move';
	var x = e.pageX || e.clientX ;
	var y = e.pageY || e.clientY;
	var left = div.offsetLeft;
	var top = div.offsetTop;
	left = x - left;
	top = y - top;
	document.onmousemove = function(e){
		x = e.pageX || e.clientX;
		y = e.pageY || e.clientY;
		div.style.top = y - top+'px';
		div.style.left = x - left+'px';
	}
	document.onmouseup = function(){
		div.style.cursor = 'auto';
		document.onmousedown = function(){}
		document.onmousemove = function(){}
	}
}
</script>

Последний раз редактировалось JsLoveR, 24.12.2012 в 20:54.
Ответить с цитированием
  #16 (permalink)  
Старый 24.12.2012, 19:48
жажду знаний
Отправить личное сообщение для bushstas Посмотреть профиль Найти все сообщения от bushstas
 
Регистрация: 17.07.2009
Сообщений: 202

если я не ошибаюсь например в Опере не работает event.pageX
там event.clientX

if(e.pageX){x=e.pageX;y=e.pageY}
else if(e.clientX){x=e.clientX;y=e.clientY}
Ответить с цитированием
  #17 (permalink)  
Старый 24.12.2012, 20:51
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

bushstas, добавить var x = e.clientX || e.pageX. Добавил в код.

Последний раз редактировалось JsLoveR, 24.12.2012 в 20:54.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определнеи координат объекта относительно окна браузера leny Events/DOM/Window 6 17.02.2015 18:58
Как открыть чужой html код в другом окне браузера? palladin Events/DOM/Window 16 22.07.2012 06:38
Отключение SCROLL в окне браузера при D&D realus Events/DOM/Window 3 10.10.2011 18:24
Как запустить функцию при отображении элемента в окне браузера? Kostushko Events/DOM/Window 6 27.09.2010 11:03
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 19:00