Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.06.2012, 21:24
Аспирант
Отправить личное сообщение для bona Посмотреть профиль Найти все сообщения от bona
 
Регистрация: 14.03.2012
Сообщений: 34

Не работает скрипт для мини-чата ucoz
Здравствуйте. У меня есть скрит игры "собачьи бега" для мини-чата ucoz(помогли сделать на одном сайте). Мне понадобилось внести туда изменения- вывести текст не с помощью alert,а с помощью _uwnd.alert,т.к. понадобилось добавить картинку,что невозможно в случае с alert. Однако после этих изменений скрипт перестал работать. Помогите разобраться,пожалуйста. Вот текст скрипта. Проблемные места находятся в функции bega и в строке deathTimer[victim] = setTimeout(function() { bega, timeToDeath) Самое интересное это то,что я пробовала сделать точно такое же _uwnd.alert на странице,созданной в редакторе и там всё работало. Неужели в данном скрипте нельзя это сделать? Если нет,то,пожалуйста,подскажи е другие способы добавить картинку к выводимому тексту.
<script type="text/javascript">
 var deathTimer = new Array(); // Массив таймеров до обгона 
 var lastAnsw = ''; // Последнее сообщение чата 

 // Инициализируем скрипт 
 setInterval(function() { 
 var x = $('#mchatIfm2').contents().find('body'); 

 var answer= $('.cMessage:first',x).text(); // текст сообщения 
 var user=$('a:first',x).text(); // ник юзера 

 duel(user, answer); 
 }, 500); 

 /***** 
 * Бега юзеров 
 ******/
 function bega(){
_uWnd.alert('<div align="center" style="padding:5px;">Обгон зверика '  +  victim  +  ' успешен <br><img src="http://zveriki.ucoz.com/bega/obgon.png"</div>', '',{w:300, tm:5000, h:250});
}     
 function duel(user, answer) { 
 if (lastAnsw == answer) return; // прерываем выполнение функции, т.к. это сообщение уже обрабатывалось 
 if (answer.indexOf('обогнать') > -1) {// user пытается кого-то обогнать
 var victim = answer.replace(/обогнать *([^ ]*).*/, '$1'); // ник жертвы 

 // проводим обработку способов обгона 
 if(answer.indexOf('ускорение') > -1)
 var timeToDeath = 7000; 
 else if(answer.indexOf('кость') > -1) 
 var timeToDeath = 5000; 

 //включаем таймер до обгона 
 if (timeToDeath) 
 deathTimer[victim] = setTimeout(function() { bega, timeToDeath);
 }else{ 
 if (answer.indexOf('вперёд!') > -1 && deathTimer[user]) { // юзер успел пресечь обгон, отключаем таймер 
 clearTimeout(deathTimer[user]); 
 deathTimer[user] = false;  
 } 
 } 
 lastAnsw = answer; 
 } 
 </script>
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2012, 07:16
Аспирант
Отправить личное сообщение для faforty Посмотреть профиль Найти все сообщения от faforty
 
Регистрация: 15.04.2011
Сообщений: 47

На строке 34 синтаксическая ошибка
deathTimer[victim] = setTimeout(function() { bega}, timeToDeath);
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2012, 09:48
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

Попробуйте так:
var victim = +answer.replace(/обогнать *([^ ]*).*/, '$1'); // ник жертвы
__________________
оляля, ололо
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jCart. Не работает ajax для динамически созданных товаров. Whitetown jQuery 2 09.03.2012 08:31
не работает скрипт с HEX значениями color DeaDiK Общие вопросы Javascript 2 17.04.2011 15:00
скрипт работает в IE через раз jsVAN Internet Explorer 2 10.03.2011 03:27
Не работает скрипт :( VladimirV Javascript под браузер 5 21.12.2010 14:26
скрипт работает в IE не работает в Opera!!! Ikram Opera, Safari и др. 3 29.10.2010 10:04