Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 27.01.2009, 19:01   #1
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию setTimeout отказывается работать

Написал функцию вроде всё верно не знаю в чём проблема но setTimeout через секунду не срабатывает, вернее срабатывает но происходит ошибка. Вот код внешнего js:
Код HTML:
var h=1, e;
function D8HintShow (D8word)
{
if(h=1){
h=0;
document.getElementById('D8Hint').innerHTML=D8word;
D8HintShowTimes(0);
}

}


function D8HintShowTimes(ind)
{
var obj = document.getElementById('D8Hint');
op = (obj.style.opacity)?parseFloat(obj.style.opacity):parseInt(obj.style.filter)/100;
if (!e) e=window.event;
if (e.pageX || e.pageY)
{
x=e.pageX;
y=e.pageY;
} else if(e.clientX || e.clientY)
{
x=e.clientX+(document.documentElement.scrollLeft || document.body.scrollLeft)-document.documentElement.clientLeft;
y=e.clientY+(document.documentElement.scrollTop || document.body.scrollTop)-document.documentElement.clientTop;
}
obj.style.left=x+15;
obj.style.top=y+15;
if(op < 1)  
     { 
      op += 0.05; 
      obj.style.opacity = op; 
      obj.style.filter='alpha(opacity='+op*100+')';
     setTimeout('D8HintShowTimes(0)',1000);}
}
В чём проблема в HTML пишу
Код HTML:
onmousemove="D8HintShow('Deight<BR>Мега HIN')
Уже дня 3 долблюсь.
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.

Последний раз редактировалось Deight; 27.01.2009 в 19:04.
Deight вне форума
Старый 27.01.2009, 19:06   #2
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

что за ошибка ? (ее можно посмотреть к примеру в ИЕ, в левом нижнем углу, в дополнительной информации)

эта функция обычно применяется к объекту window
Код HTML:
window.setTimeout(func(),100);
свободен...

Последний раз редактировалось wall66; 27.01.2009 в 19:09.
wall66 вне форума
Старый 27.01.2009, 19:10   #3
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию

Ошбка на странице. Пишет. А как подробнее узнать.
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
Deight вне форума
Старый 27.01.2009, 19:55   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Может рекурсивное зацикливание? Не успевает отработать предыдущий цикл, как уже начинается следующий.
SkyM@n вне форума
Старый 27.01.2009, 20:21   #5
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию

Ну вырежите и поставте строку с settimeout, во второй функции, вместо строки с d8hintshowtimes(0); в первой функции. Зацикливание не происходит но ошибка всё равно вылетает. Я вообще не знаю чего ему нужно.
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
Deight вне форума
Старый 27.01.2009, 20:24   #6
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию

Даже если вызывать в mouseover всё равно ошибка. Причем я до этого подобные функции писал и ошибок не возникало а тут...
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
Deight вне форума
Старый 27.01.2009, 20:30   #7
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию

И еще интересно когда мышкой водиш по объекту то функции работают как часы т.Е. Если просто эту функцию вызывать d8hintshowtimes(0) то все норм а если по таймеру то ошибка, параметр ind я ввел по тому что мне сказали что без параметра settimeout не вызывает функцию, без него тоже не работает.
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
Deight вне форума
Старый 27.01.2009, 20:45   #8
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Цитата:
Сообщение от Deight Посмотреть сообщение
Ошбка на странице. Пишет. А как подробнее узнать.
кликни на эту надпись и нажми кнопку "подробней" или что-то вроде того
свободен...
wall66 вне форума
Старый 27.01.2009, 20:56   #9
Deight
Бредовый
Форумчанин
 
Аватар для Deight
 
Регистрация: 15.11.2008
Сообщений: 285
По умолчанию

Дважды кликнуть нужно, строка 22 символ 8 член группы не найден код 0
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
Deight вне форума
Старый 27.01.2009, 21:54   #10
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Цитата:
Сообщение от Deight Посмотреть сообщение
Дважды кликнуть нужно, строка 22 символ 8 член группы не найден код 0
в общем советую временно скинуть все подключаемые файлы в сам код и уточнить в каком месте ошибка, там видней будет
свободен...
wall66 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работать с аjax creartor PHP 1 21.12.2008 03:44
Программа отлично работает при событии Button1Click, и отказывается работать в FormCreate xTANATOSx Общие вопросы Delphi 3 19.09.2007 08:02
Хочу работать! AVer Свободное общение 14 09.09.2007 20:06
Re : Работать пора Филлип Свободное общение 27 30.01.2007 19:27