Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.04.2010, 04:09
Аватар для InviS
Кандидат Javascript-наук
Отправить личное сообщение для InviS Посмотреть профиль Найти все сообщения от InviS
 
Регистрация: 19.02.2010
Сообщений: 116

Скрипт неправильно работает в FF
Ребят, подскажите, пожалуйста, что неправильно на этой страничке:
http://invis.emaxihost.com/temp/dz/.
Во всех браузерах все выполняется, а в FF не хочет выполняться и ошибок тоже не выдает... С чем это может быть связано?
Ответить с цитированием
  #2 (permalink)  
Старый 11.04.2010, 04:53
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,480

console.log() (ну или alert()) вам в руки, и садитесь за отладку. Никто за вас отлаживать ваш же скрипт не будет.
Могу лишь намекнуть, что раз ошибок нет, то скорей всего их действительно нет) т.е. просто какие-то важные для работы скрипта данные не получаются, не передаются или равны нулю.

Кстати, самая частая ошибка: любые значения задаваемые через style должны быть обязательно с указанием размерности: px, em, pt итд.

Последний раз редактировалось Aetae, 11.04.2010 в 04:56.
Ответить с цитированием
  #3 (permalink)  
Старый 11.04.2010, 10:27
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

InviS,
Это связано с тем что Вы пишите устаревший или не кроссбраузерный код, читайте про ифреймы тут: http://javascript.ru/ajax/transport/iframe
Ответить с цитированием
  #4 (permalink)  
Старый 11.04.2010, 13:28
Аватар для InviS
Кандидат Javascript-наук
Отправить личное сообщение для InviS Посмотреть профиль Найти все сообщения от InviS
 
Регистрация: 19.02.2010
Сообщений: 116

Да это простейшая работа лабораторная. Я не собираюсь ничего на сервер передавать и т.п. Ну насколько я понял.
Нашел в чем ошибка... Вот функция, которая прописана во фрейме:
function secondClick() {  // обработчик запуска второй строки
        var second=parent.document.getElementById("second").value;
        RightIndent=-second.length*20;  // 20px - размер шрифта
        var obj=document.getElementById("secondout");
        obj.style.right=delpx(RightIndent+"px");  // начальный отступ
        obj.innerHTML=second;
        secondId=setInterval(ScrollLeft,timeout); // запускаем исполнение функции ScrollLeft через интервал --> движение
      }

работает все вплоть до setInterval()... Да и setInterval работает везде, кроме FireFox! Писал даже
setInterval(function(){alert('111');}, 1000);

И все равно работало везде, кроме FireFox. Что за баг? почему ФФ не хочет исполнять setInterval?
Ответить с цитированием
  #5 (permalink)  
Старый 11.04.2010, 13:35
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от InviS Посмотреть сообщение
И все равно работало везде, кроме FireFox. Что за баг? почему ФФ не хочет исполнять setInterval?
Потому что это не баг. Потому что я сказал вам читать про ифреймы, а не про передачу данных на сервер.
Ответить с цитированием
  #6 (permalink)  
Старый 11.04.2010, 16:33
Аватар для InviS
Кандидат Javascript-наук
Отправить личное сообщение для InviS Посмотреть профиль Найти все сообщения от InviS
 
Регистрация: 19.02.2010
Сообщений: 116

я прочитал, но ничего, что ответило на мой вопрос и исправило бы это я не нашел. Все браузеры исполняют, а ФФ не хочет - и виноват iframe?
Простого решения, без замены iframe на что-то другое не существует?
Ответить с цитированием
  #7 (permalink)  
Старый 11.04.2010, 16:56
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от InviS Посмотреть сообщение
я прочитал, но ничего, что ответило на мой вопрос и исправило бы это я не нашел. Все браузеры исполняют, а ФФ не хочет - и виноват iframe?
нет iframe не виноват. Вы неправильно обращаетесь к iframe.

Вот это:
<button onclick="window.frm.stop("first"); window.frm.firstClick();">Запустить!</button>

Заменить на вот это:
<button onclick="document.getElementById('frm').contentWindow.stop("first"); document.getElementById('frm').contentWindow.firstClick();">Запустить!</button>


И оно заработает в FF, а после этого идёте по ссылке что я дал и читаете до тех пор, пока не поймете или не заучите или до полного озарения.
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт не работает в FF и опера, но работает в IE(в чем дело???) Cepera Firefox/Mozilla 1 24.08.2012 16:46
Java скрипт не работает в Opera Eagle28 Ваши сайты и скрипты 3 07.04.2010 19:36
Почему не работает скрипт, подскажите aviaks Ваши сайты и скрипты 2 05.05.2009 14:38
Скрипт не работает в опере, работает в IE XpycTuk Общие вопросы Javascript 9 06.03.2009 15:50
Скрипт меню-гармошки работает выборочно Extern Элементы интерфейса 2 23.02.2009 15:32