McLotos
24.10.2014 - 08:12
Hello World! =)
Ребята, подскажите, вот есть к примеру чат с онлайн-консультантом, типа JivoSite. При переходе по страницам он остается висеть даже если страница еще на загрузилась. Как это сделано? Ну т.е. браузер уже снес предыдущую страницу, новую еще не получил, а чат продолжает работать. Разве JS может работать пока страница не получена или это как-то сокетами делается?
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Цитата (McLotos @ 24.10.2014 - 04:12) |
При переходе по страницам он остается висеть даже если страница еще на загрузилась |
Ну а пример? на их сайте нет никакой магии, скрипт подключается так:
(function() {
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = '//cleversite.ru/cleversite/widget_new.php?referer_main='+encodeURIComponent(document.referrer)+'&clid=256&site=2';
var ss = document.getElementsByTagName('script')[0];
ss.parentNode.insertBefore(s, ss);
})();
McLotos
24.10.2014 - 08:26
Я не силен в JS, что имеется ввиду?
Мне кажется в любом случае браузер должен сначала получить этот скрипт с сервера а уже потом создавать чат, а у них получается что браузер еще не запросил страницу а чат уже стоит
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Игорь_Vasinsky
24.10.2014 - 08:32
js - на клиентской стороне работает, не на сервере.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Цитата (McLotos @ 24.10.2014 - 04:26) |
а у них получается что браузер еще не запросил страницу а чат уже стоит |
покажите же наконец где у них так получается. потому что на сайте JivoSite так не "получается". И чат загружается кодом из предыдущего сообщения.
Цитата (McLotos @ 24.10.2014 - 04:26) |
Я не силен в JS, что имеется ввиду? |
(function() {
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = '//cleversite.ru/cleversite/widget_new.php?referer_main='+encodeURIComponent(document.referre r)+'&clid=256&site=2';
var ss = document.getElementsByTagName('script')[0];
ss.parentNode.insertBefore(s, ss);
})();