var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXX-X']); "> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXX-X']); "> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXX-X']); " />

Чаму Google Analytics пабудавана так, як гэта?

код Google для ўстаўкі Google Analytics:

http://www.google.com/support/analytics/bin /answer.py?answer=174090

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

чаму проста ўставіць непасрэдна код:

<script type="text/javascript" async="true" src="https://www.google-analytics.com/ga.js">
<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview']);
</script>

Загадзя дзякую,

3
@Yosef - вам трэба больш інфармацыі тут? Я лічу, што гэтае пытанне быў дадзены адказ
дададзена аўтар Marian Bazalik, крыніца
таму што ваш чаму не; яны робяць гэта такім чынам код з'яўляецца няправільным, выкарыстоўвае WWW замест SSL :)
дададзена аўтар epascarello, крыніца
? Я не разумею, што вы спрабуеце спытаць.
дададзена аўтар wkl, крыніца

5 адказы

Яны сцвярджаюць, прычыну, чаму яны выкарыстоўваюць асінхронныя ў гэтым дакуменце вы звязаныя:

<Р> Адным з галоўных пераваг асінхроннага кода з'яўляецца тое, што вы можаце   змесціце яго ў верхняй частцы HTML-дакумента. гэта павялічвае   верагоднасць таго, што адсочванне маяк будзе адпраўлены перад карыстачом   пакідае старонку. Прынята размяшчаць код JavaScript у    раздзел, і мы рэкамендуем змясціць фрагмент у ніжняй частцы   секцыя для лепшай прадукцыйнасці.

3
дададзена
я пытаюся, чаму не ўставіць непасрэдна ў скрыпт месцазнаходжанне ня чаму НАД асінхронных
дададзена аўтар Yosef, крыніца
@Yosef яго тое ж самае. Ўскосная ўстаўка прымушае яго ўводзіць асінхронна ў многіх браўзэрах, якія відавочна не падтрымліваюць асінхроннай атрыбуту. Пратакол з'яўляецца часткай яго, але гэта больш важна. У адваротным выпадку, яны маглі б проста зрабіць <сцэнар SRC = "// www.google-analytics.com/ga.js </script> і ён будзе загружаны, выкарыстоўваючы адпаведныя пратаколы.
дададзена аўтар Yahel, крыніца

Гэта робіцца такім чынам, каб ён мог загрузіць JS файл, выкарыстоўваючы правільны пратакол (HTTP://або https: //)

2
дададзена

Код GA з'яўляецца універсальным сниппет ўключыць скрыпт на кожнай старонцы, з выкарыстаннем адпаведнага пратаколу. Старонкі служыў на нагрузцы HTTPS-пратаколу сцэнар GA праз абароненае злучэнне. Старонкі ў іншых пратаколах падаюцца праз звычайны (HTTP) пратакол.

Значная частка кода прыведзены ніжэй:

ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';

эквівалент:

if ('https:' == document.location.protocol) {
    ga.src = 'https://ssl.google-analytics.com/ga.js';
} else {
   ga.src = 'http://www.google-analytics.com/ga.js';
}
2
дададзена
але калі я праграміст, я магу зрабіць код, які я прапаную правільна?
дададзена аўтар Yosef, крыніца
@Yosef Калі вы кіруеце вялікі вэб-сайт, дзе старонкі падаюцца на абодва абароненых (HTTPS) і звычайных злучэнняў, зыходны код з'яўляецца лепшым спосабам пайсці. Калі вы 10000% упэўненыя, што вы ніколі не будзеце выкарыстоўваць пратакол HTTPS, ваш Рэкамендаваны код таксама варыянт.
дададзена аўтар Rob W, крыніца

Таму што яны павінны пераканацца, што ў іх ёсць пратакол правільна. Яны павінны ўзаемадзейнічаць па пратаколе HTTPS, калі адсочваюцца старонка перадаецца па пратаколе HTTPS.

1
дададзена
Су я магу паставіць HTTPS URL і калі мая старонка праз HTTP
дададзена аўтар Yosef, крыніца
Калі вы адчуваеце сябе выдатна збіраецца кожнай старонцы ў вас ёсць, і вызначэння таго, карыстаецеся Ці вы HTTP ці HTTPS на гэтай старонцы, гэта добра са мной. Я пакладу гэта ў маім шаблоне старонкі адзін раз і ніколі не глядзець на яго зноў.
дададзена аўтар nicholas.hauschild, крыніца

Я ведаю, што калі IE загружае кантэнт праз злучэнне HTTPS SSL, ён не будзе нічога звязанага праз HTTP загрузкі, таму ніколі не будзе загружацца код адсочвання.

0
дададзена