Войти

Показать полную графическую версию : счетчик HotLog


gurWin
25-08-2002, 09:24
Есть вопрос по счетчику HotLog. Объясните пожалуйста, что к чему, что означают все эти переменные и для чего они нужны:

<BR><script
language="javascript"><BR>hotlog_js="1.0";hotlog_d=document;
hotlog_n=navigator;hotlog_rn=Math.random();<BR>hotlog_n_n=(hotlog_n.appName.substring(0,3)=="Mic")?0 :1;<BR>hotlog_r=""+hotlog_rn+"&s=25034&im=19&r="+escape(hotlog_d.referrer)+"&pg="+<B R>escape(window.location.href);<BR>hotlog_d.cookie="hotlog=1";
hotlog_r+="&c="+(hotlog_d.cookie?"Y":"N");<BR>hotlog_d.cookie="hotlog=1;
expires=Thu, 01-Jan-70 00:00:01 GMT"</script><BR><script
language="javascript1.1"><BR>hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N" )</script><BR><script
language="javascript1.2"><BR>hotlog_js="1.2";hotlog_s=screen;<BR>hotlog_r+="&wh="+hotlog_s.wi dth+'x'+hotlog_s.height+"&px="+((hotlog_n_n==0)?<BR>hotlog_s.colorDepth:hotlog_s.pixelDepth)</script><BR><script
language="javascript1.3">hotlog_js="1.3"</script><BR><script
language="javascript">hotlog_r+="&js="+hotlog_js;<BR>hotlog_d.write("<a
href=http://click.hotlog.ru/?25034 target=_top><img
"+<BR>"src=\"http://hit2.hotlog.ru/cgi-bin/hotlog/count?"+<BR>hotlog_r+"&\"
border=0 width=88 height=31
alt=HotLog></a>")</script><BR><noscript><a
href=http://click.hotlog.ru/?25034
target=_top><img<BR>src="http://hit2.hotlog.ru/cgi-bin/hotlog/count?s=25034&im=19"
border=0<BR>width="88" height="31"
alt="HotLog"></a></noscript>

hotlog_js - это версия javascript
...
p.s. Ни как не получается вставить нормальный код :(



Исправлено: gurWin, 11:31 25-08-2002

BigMac
25-08-2002, 16:50
gurWin
Что значит не получается вставить код? у меня вот стоит и все пашет.....что именно тебе объяснить?

gurWin
27-08-2002, 22:13
Короче, для чего нужны всякие hotlog_n_n=(hotlog_n.appName.substring(0,3)=="Mic")?0:1;
И прочие переменные???

BigMac
27-08-2002, 22:21
gurWin
Ну это как в любой проге...всякие разные параметры....я не знаю как у них устроен счетчик, поэтому сказать не могу

vasketsov
28-08-2002, 07:31
hotlog_js="1.0";
это в строку пишется версия JS по умолчанию.

hotlog_d=document;
ссылка на объект document

hotlog_n=navigator;
ссылка на объект navigator

hotlog_rn=Math.random();
берется случайное число

hotlog_n_n=(hotlog_n.appName.substring(0,3)=="Mic")?0:1;
проверяется, что это не Microsoft-броузер.

hotlog_r=""+hotlog_rn+"& s=25034&im=19&r="+escape(hotlog_d.referrer)+"&pg="+<BR>escape(window.location.href);
тут запоминается где ты находишься и откуда пришел + еще туфта всякая типа твоего идентификатора (s).

hotlog_d.cookie="hotlog=1";
Устанавливается кука с таким текстом, которая будет активна только до закрытия этого окна броузера.

hotlog_r+="&c="+(hotlog_d.cookie?"Y":"N");
типа проверка, включены ли куки.

hotlog_d.cookie="hotlog=1; expires=Thu, 01-Jan-70 00:00:01 GMT"</script>
прибитие ее.

<script language="javascript1.1">
hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N")
</sc ript>
этот кусок будет выполняться только при подержке JS1.1 и добавляет в урл запроса, включена ли JAVA.


<script language="javascript1.2">
hotlog_js="1.2";hotlog_s=screen;
hotlog_r+="&wh="+hotlog_s.width+'x'+hotlog_s.height+&q uot;&px="+((hotlog_n_n==0)?hotlog_s.colorDepth:hotlog_s.pixelDepth)
</script>
тут то же для JS1.2, но с ошибкой. Если броузер не IE, это еще не значит, что он NN4, то предполагает такой код. Короче, не пишите так никогда, дабы не ругали за криворукость. Это я про глубину цвета.

<script language="javascript1.3">
hotlog_js="1.3"
</script>
а тут просто установка, что понимаем JS1.3
видимо более высокие версии авторы скрипта не признают.

<script language="javascript">
hotlog_r+="&js="+hotlog_js;
hotlog_d.write("<a href=http://click.hotlog.ru/?25034 target=_top><img "+
"src=\"http://hit2.hotlog.ru/cgi-bin/hotlog/count?"+
hotlog_r+"&\" border=0 width=88 height=31 alt=HotLog></a>")
</script>
это, собственно, то, ради чего это затевалось. вывод на экран кода ссылки с картинкой.

<noscript>
<a href=http://click.hotlog.ru/?25034 target=_top>
<img
src="http://hit2.hotlog.ru/cgi-bin/hotlog/count?s=25034&im=19" border=0<BR>width="88" height="31" alt="HotLog"></a></noscript>
А это если JS отключен.

Вот так.

gurWin
28-08-2002, 12:11
А зачем делать вот так:
hotlog_d=document;
ссылка на объект document
Нельзя сразу написать document???

vasketsov
28-08-2002, 13:11
gurWin
можно и сразу.
обычно это для экономии места делают.
типа так.
d=document;
w=d.write;
w('код');

gurWin
31-08-2002, 08:30
<script language="javascript1.2">
hotlog_js="1.2";hotlog_s=screen;
hotlog_r+="&wh="+hotlog_s.width+'x'+hotlog_s.height+&q uot;&px="+((hotlog_n_n==0)?hotlog_s.colorDepth:hotlog_s.pixelDepth)
</script>
тут то же для JS1.2, но с ошибкой. Если броузер не IE, это еще не значит, что он NN4, то предполагает такой код. Короче, не пишите так никогда, дабы не ругали за криворукость. Это я про глубину цвета.

А как писать???

vasketsov
02-09-2002, 14:03
gurWin
А как писать???
а погляди как у меня на сайте это сделано.
в javascript-e.
адрес такой: http://registry.km.ru/cnt.js
обращай внимание на if-ы.

gurWin
05-09-2002, 07:50
А для чего рандомное число Math.random(); делается и как оно используется в скрипте

ivank
05-09-2002, 16:33
gurWin
Это делается, что бы избежать кэширования в браузерах и проксях.
Т.к. иначе они вполне могут выдать скачанную ранее картинку (счётчик) =>
=> не произойдёт обращения к серверу счётчика =>
=> ничего не сосчитается.




© OSzone.net 2001-2012