#javascript #google-ads-api #tracker
#javascript #google-ads-api #отслеживание
Вопрос:
Мне нужно вставить 2 кода отслеживания на веб-сайт, но я также должен убедиться, что они отслеживают активность, ТОЛЬКО если утверждение jQuery верно. Один из них — Google Adwords, другой — код Gemius:
Вот код отслеживания Gemius:
<script type="text/javascript">
(_gdeaq = window._gdeaq || []).push(['pageView', 'gdehu', 'some_code', 'some_code_2, 'some_code_3']);
</script>
<script type="text/javascript" src="//gdehu.hit.gemius.pl/something_url"> </script>
Adwords:
<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = 12345678;
var google_conversion_language = "en";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "some_data_here";
var google_remarketing_only = false;
/* ]]> */
</script>
<script type="text/javascript" src="//www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="//www.googleadservices.com/pagead/conversion/12345678/?label=some_data_hereamp;amp;guid=ONamp;amp;script=0"/>
</div>
</noscript>
Я должен активировать эти два трекера, ТОЛЬКО если утверждение истинно:
<script type="text/javascript">
jQuery(function(){
jQuery("#formsubmit").click(function(event){
//some code here
jQuery("input[type='text'],select,input[type='checkbox']","#forms").each(function(){
//some code here
});
if( jQuery("input[name='email']","#forms").val() != jQuery("input[name='cEmail']","#forms").val() ){
//some code here
}
if(!error_flag){
//i have to call the trackers only if this statement is true
//so i want to insert them here somehow
}else{
alert(error_message);
}
});
});
</script>
Не могли бы вы предложить мне какие-нибудь решения?
Комментарии:
1. динамически загружайте два внешних скрипта, если условие истинно — итак, строка 4 в первом фрагменте и строки 11,12 во втором
Ответ №1:
Попробуйте это:
if(!error_flag){
//i have to call the trackers only if this statement is true
// i want to insert them here somehow
(function() {
(_gdeaq = window._gdeaq || []).push(['pageView', 'gdehu', 'some_code', 'some_code_2, 'some_code_3']);
var sc1 = document.createElement('script'); sc1.type = 'text/javascript'; sc1.id = "sc1";
sc1.src = '//gdehu.hit.gemius.pl/something_url';
var fs = document.getElementsByTagName('script')[0];
fs.parentNode.insertBefore(sc1, fs);
})();
var google_conversion_id = 12345678;
var google_conversion_language = "en";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "some_data_here";
var google_remarketing_only = false;
(function() {
var sc2 = document.createElement('script'); sc2.type = 'text/javascript'; sc2.id = "sc2";
sc2.src = '//www.googleadservices.com/pagead/conversion.js';
var fs = document.getElementsByTagName('script')[0];
fs.parentNode.insertBefore(sc2, fs);
})();
}
Комментарии:
1. Хорошо, пожалуйста, отметьте это как принятый ответ , нажав на кнопку «Отметить галочкой» (предоставляется в левой части этого ответа).