Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№101-04-2008 02:00:45

object
Участник
 
Группа: Members
Зарегистрирован: 01-04-2008
Сообщений: 1
UA: IE 7.0

проблема со скриптом

подскажите плиз, есть скрипт:

Выделить код

Код:

function startdrag() {
// функция срабатывает во всех браузерах, в том числе и в мозиле
	if(navigator.appName == 'Microsoft Internet Explorer'){x = window.event.clientX-50;}
	if(navigator.appName == 'netscape'){
//срабатывает в мозиле
		x = event.clientX-50;
		document.addEventListener("mousemove", dragGo,   true);
   		document.addEventListener("mouseup",   dragStop, true);
    	event.preventDefault();
	}
	if(window.opera){x = window.event.clientX-50;}
	scrl_x=parseInt(document.getElementById("scrl").style.left)-50;
	
	if (navigator.appName == 'Microsoft Internet Explorer') {
    document.attachEvent("onmousemove", dragGo);
    document.attachEvent("onmouseup",   dragStop);
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  	}
	if (window.opera) {
    document.attachEvent("onmousemove", dragGo);
    document.attachEvent("onmouseup",   dragStop);
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  	}
function dragGo(){
//все браузеры заходят в функцию, а мозила нет, в чем беда?
...
}

Отсутствует

 

№201-04-2008 02:16:02

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 2.0

Re: проблема со скриптом

Выделить код

Код:

//срабатывает в мозиле
        x = event.clientX-50;

Выведите event, например, через alert(event); – получите, скорее всего, undefined.

Сработает примерно следующее:

Выделить код

Код:

<div onmousedown="startdrag(event);"> ... </div>

function startdrag(e) {
  e = e || window.event;
  // ...

P.S. В скрипт не вникал. К тому же не хватает подробностей...

P.P.S. Если не ошибаюсь,
document.addEventListener("mousemove", dragGo, false); // перехват события в bubble-фазе
соответствует
document.attachEvent("onmousemove", dragGo);
Впрочем, не уверен, что в данном случае это имеет значение.

Добавлено Tue Apr  1 02:18:51 2008 :
P.P.P.S. Инструменты – Консоль ошибок ;)

Отредактировано Infocatcher (01-04-2008 02:17:28)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№301-04-2008 11:02:50

Shutnik
Участник
 
Группа: Extensions
Зарегистрирован: 12-11-2005
Сообщений: 3785
UA: Firefox 2.0

Re: проблема со скриптом

с каких интересно пор firefox стал отзываться на

Выделить код

Код:

navigator.appName == 'netscape'

?

скрипт проще полностью переписать, а не брать неизвестно откуда старый и кривой на сегодняшний день

Отсутствует

 

№401-04-2008 12:25:02

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 2.0

Re: проблема со скриптом

Shutnik

Выделить код

Код:

javascript: alert(navigator.appName);

Правда, первая буква большая.

А вот скрипт действительно проще переписать...


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]