Скрипт для проверки наличия новых сообщений без перезагрузки
|
|
|
2012-06-21Дата: Четверг, 21.06.2012, 11:36 | Сообщение # 16 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
likbezz, ладно, спасибо за помощь, вот только ваша версия кода не работает... проверять нужно, прежде чем чтото советывать. всего хорошего.
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 12:06 | Сообщение # 17 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Shaman, проверять нужно, прежде чем чтото советывать Да, спасибо, я в курсе, по этому, скрипт проверен и работает в браузерах: Мозилла, Хром, Опера, ИЕ, Сафари и SeaMonkey. В остальных, извините, не проверял, но думаю тоже работать будет.
☑ Пример.
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 12:11 | Сообщение # 18 |
Генерал-лейтенант
Группа: Помощники
Статус: Offline
|
likbezz, Какая версия не работает? У меня уже давно твой скрипт на всех сайтах стоит и всё работает. С ним что возникли проблемы какие то?
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 16:16 | Сообщение # 19 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Diana, Какая версия не работает? Что, простите? У меня уже давно твой скрипт на всех сайтах стоит и всё работает. Я знаю что работает, но вот у пользователя Shaman, что-то не очень, видимо.
С ним что возникли проблемы какие то? У меня - нет) Никаких проблем)
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 16:28 | Сообщение # 20 |
Генерал-лейтенант
Группа: Помощники
Статус: Offline
|
likbezz, Уфф!!! Ну слава богу. Я уже после всех этих юкозовских перестроек, всего боюсь( Чуть ли не каждый день - зашел на сайт а там сюрприз. То одно слетело то другое.
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 22:53 | Сообщение # 21 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
Тогда я ничего не понимаю... Ткните носом в ошибку, что здесь не так? С этим кодом ничего не происходи, и никакого оповещения нету, даже окно не выскакивает...
Code <?if($USER_LOGGED_IN$)?><script type="text/javascript">function tMess(n){var a=[' новое сообщение',' новых сообщения',' новых сообщений'];return a[n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2]}; function getPM(){$.get("/index/14",function(a){var s=$("b.unread",a).size();if (s) {var n=tMess(s),all=[],leg=(s==1)?'Сообщение':'Сообщения';$("b.unread",a).each(function(){var title = $(this).html(), href = $(this).parent().attr("href"); all.push('» <a href="'+href+'">'+title+'</a>');});all.push('<object style="width: 1px; height: 1px; position: absolute; top: 0px; left: 0px;" id="objNewPm" type="application/x-shockwave-flash" data="http://likbezz.ru/_theme1/_st/sound/icq_new_pm.swf" height="1" width="1"><param name="wmode" value="transparent"><param name="movie" value="http://likbezz.ru/_theme1/_st/sound/icq_new_pm.swf"></object>');}); new _uWnd('ls','Новые ЛС',250,120,{icon:'http://javascript.ucoz.net/images/message.png',align:'left'},'<center>Вам пришло '+s+n+'!</center><br><fieldset><legend>'+leg+'</legend>'+all.join("<br>")+'</fieldset>');}});setTimeout(getPM,10000)};getPM();</script><?endif?>
| | |
|
|
2012-06-21Дата: Четверг, 21.06.2012, 23:48 | Сообщение # 22 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Shaman, Ткните носом в ошибку, что здесь не так? Здесь все так. Возможно вы его вставляете не туда? Добавляется он в самый низ шаблона, или в глобальный блок, например нижний. Или же у вас просто нет личных сообщений.
Скрипт не открывает окошко если у вас нет НЕпрочитанных сообщений.
Установите, допустим, в шаблон Форум » Общий вид перед оператором . И отправьте себе личное сообщение.
Что бы отправить самому себе сообщение, нужно просто изменить любую буквы в логине, с прописной на заглавную, например: Shaman, а отправляете shaman.
Если все правильно через 10 секунд увидите окошечко с собщением о новом сообщении (каламбур). ... Как-то так.
| | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 00:15 | Сообщение # 23 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
Та не, я это всё проверил, вставляю правильно, на место рабочего варианта, и сам отправляю себе сообщения с другого профиля, при этом намерено захожу в сообщения непрочитаные висят, окно не выскакивает. Тутже ставлю на место вашего варианта первоночальный (без звука), Code <?if($USER_LOGGED_IN$)?><script type="text/javascript">function tMess(n){var a=[' новое сообщение',' новых сообщения',' новых сообщений'];return a[n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2]}; function getPM(){$.get("/index/14",function(a){var s=$("b.unread",a).size();if (s) {var n=tMess(s),all=[],leg=(s==1)?'Сообщение':'Сообщения';$("b.unread",a).each(function(){var title = $(this).html(), href = $(this).parent().attr("href"); all.push('» <a href="'+href+'">'+title+'</a>');}); new _uWnd('ls','Новые ЛС',250,120,{icon:'http://javascript.ucoz.net/images/message.png',align:'left'},'<center>Вам пришло '+s+n+'!</center><br><fieldset><legend>'+leg+'</legend>'+all.join("<br>")+'</fieldset>');}});setTimeout(getPM,10000)};getPM();</script><?endif?> и всё снова начинает работать...
Вот сейчас снова проведу эксперимент, возможно я с ума сошел... Сейчас поставил этот код, отправил сообщение, просидел и даже сам страницу обновил!, но оповещения нет...
Захожу в сообщения, и смотрю, непрочитанное висит.
Вставляю снова первоночальный код (без звука), и окно снова появилось...
если не верите, могу предоставить пароль от админки... но этот код не работаетт..
Сначало думал что конфликтует с чемто, поставил на других страницах и на форуме, но без вариантов...
Может вы скините в ЛС мне оригинал кода, который сидит здесь, я попробую вставить его... буду благодарен..
Сообщение отредактировал Shaman - Пятница, 22.06.2012, 00:16 | | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 00:33 | Сообщение # 24 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Shaman, и всё снова начинает работать... Вот как? Попробуйте вот так, вместо скрипта. Code <?if($USER_LOGGED_IN$)?><script type="text/javascript" src="http://likbezz.ru/_source/_js/ext/tMessSound.js"></script><?endif?> Дело в том что парсер ставит переносы строк и пробелы где попало. возможно где-то не там. Если будет работать скачаете себе, и перепишите ссылку на скрипт. Время установлено 60 секунд.
Или скопируйте из прикрепления, там чистый код:
| | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 01:04 | Сообщение # 25 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
Попробуйте вот так, вместо скрипта. Так сразу заработало!)) Спасибо огромное за помощь, реально двое суток провозился))) только небольшие изменения произошли, лс начало открыватся в новом окне, а мне необходимо в этом же окне или фрейме. можете както изменить? Извените если надоел со своими проблемами. )))
| | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 01:09 | Сообщение # 26 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Shaman, только небольшие изменения произошли, лс начало открыватся в новом окне, а мне необходимо в этом же окне или фрейме. Вот эту строку найдите в скрипте: Quote (Code) pm.push('» <a href="'+href+'" target="_blank">'+a+'</a>') Выделенное: target="_blank" просто удалите - сотрите - будет открываться в том же окне.
| | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 01:21 | Сообщение # 27 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
likbezz, Спасибо, перезалил себе и изменил "_blank" на "_self" всё заработало как нужно. Ещё раз спасибо что провозились со мной целый день))
| | |
|
|
2012-06-22Дата: Пятница, 22.06.2012, 01:26 | Сообщение # 28 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
Shaman, и изменил "_blank" на "_self" всё заработало как нужно. Можно и так) а можно просто убрать _blank - по умолчанию всегда _self ) Да ничего, и не целый день ) а так, чуть чуть)
| | |
|
|
2012-08-03Дата: Пятница, 03.08.2012, 13:22 | Сообщение # 29 |
Рядовой
Группа: Пользователи
Статус: Offline
|
Подскажите, плиз, можно ли на ucoz-е сделать так, чтобы если пришло сообщение, то выскакивало не только оповещение о новом сообщении но и само сообщение (как в многих соц.сетях/например вконтакте/)?
| | |
|
|
2012-08-03Дата: Пятница, 03.08.2012, 13:29 | Сообщение # 30 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
multik_ucoz_ua, Подскажите, плиз, можно ли на ucoz-е сделать так, чтобы если пришло сообщение, то выскакивало не только оповещение о новом сообщении но и само сообщение (как в многих соц.сетях/например вконтакте/)? Можно.
| | |
|