Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.02.2009, 17:55
Новичок на форуме
Отправить личное сообщение для Camomile Посмотреть профиль Найти все сообщения от Camomile
 
Регистрация: 04.02.2009
Сообщений: 1

Cкрипт в IE работает, а в Opera нет
Привет всем! Прошу о помощи... Столкнулась с проблемой: скрипт нормально работает в експлоуере, а в опере работает странным образом.
Задача состоит в том чтобы передвигать объект (в данном случае работаю из слоями) -- Drag & Drop. В опере передвигаемый слой при перетаскивании изменяет цвет фона, а именно закрашивает его в свой цвет! вот скрипт:


........................
<div id="form" style="position: absolute; left: 100px; top: 101px; font-size: 180%; background-color: #00FF66; width: 75%; height: 75%;">
<div id="button" style="position: relative; top: 102px; left: 65px; width: 100px; height: 100px; background-color: #CCCCCC; cursor: move; border: #000000 solid thin" ></div>
</div>  

</body>

<script type="text/javascript"> 
 var mX,mY; 
 var button =  document.getElementById('button');
 var form = document.getElementById('form');  
 var dragflag = false;
 
 var X, Y; 
 var riznX, riznY;
 
 button.onmousedown = function(event)
 {
   event = event || window.event;
   X = parseInt(button.style["left"]); 
   Y = parseInt(button.style["top"]);    
   x = parseInt(event.clientX)-form.offsetLeft;  
   y = parseInt(event.clientY)-form.offsetTop;  
   riznX = x-X;      
   riznY = y-Y;
   dragflag = true;
 }
 form.onmouseup = function (event)
 {  
   event = event || window.event;   
   dragflag = false;  
 }
 form.onmousemove = function (event)
 {
   event = event || window.event;   
   if (dragflag == true)
   {
   mX = event.clientX;
   mX -= form.offsetLeft; 
   mX -= riznX;  
   mY = event.clientY;
   mY -= form.offsetTop;   
   mY -= riznY;
   button.style.top = mY;
   button.style.left = mX;      
   }          
 }


...............

Буду признательна если укажете возможные причины проблемы

Последний раз редактировалось Андрей Параничев, 04.02.2009 в 18:09. Причина: Пользуйтесь bb-тегами [js] и [html] для оформления листингов кода в теле сообщения
Ответить с цитированием
  #2 (permalink)  
Старый 08.02.2009, 04:08
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

у меня в Опере (последней) ничего не закрашивается
могу предложить попробовать какую-нибудь библиотеку, в которой drag'n'drop уже реализован, например, jquery
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS не работает в Opera и FF Yadooumne! Общие вопросы Javascript 5 06.04.2011 19:18
Работает в IE, не работает в Opera SunYang Общие вопросы Javascript 19 27.02.2009 23:43
Помогите! Почему в Opera js-код работает с ошибкой. В IE все нормально. maxonline Events/DOM/Window 4 21.11.2008 12:39
Скрипт в IE работает, а FF и Opera - нет sheisola Ваши сайты и скрипты 5 06.11.2008 16:38
Скрипт не работает в Opera, Firefox Faster Events/DOM/Window 2 08.08.2008 18:56