Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Яндекс метрика событие (https://javascript.ru/forum/misc/68706-yandeks-metrika-sobytie.html)

INDUK 04.05.2017 11:13

Яндекс метрика событие
 
В общем есть бронирование и нужно отслеживать кнопку "book now" (Чтоб появилась нужно дату выбрать)
https://pinpoint.world/wordpress/exa...ault-calendar/

Я сделал так в низу страницы
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
    (function (d, w, c) {
        (w[c] = w[c] || []).push(function() {
            try {
                w.yaCounterххххх = new Ya.Metrika({
                    id:ххххх,
                    clickmap:true,
                    trackLinks:true,
                    accurateTrackBounce:true,
                    webvisor:true
                });
            } catch(e) { }
        });

        var n = d.getElementsByTagName("script")[0],
            s = d.createElement("script"),
            f = function () { n.parentNode.insertBefore(s, n); };
        s.type = "text/javascript";
        s.async = true;
        s.src = "https://mc.yandex.ru/metrika/watch.js";

        if (w.opera == "[object Opera]") {
            d.addEventListener("DOMContentLoaded", f, false);
        } else { f(); }
    })(document, window, "yandex_metrika_callbacks");


</script>
<noscript>
<div><img src="https://mc.yandex.ru/watch/ххххх" style="position:absolute; left:-9999px;" alt="" /></div>
</noscript>
<!-- /Yandex.Metrika counter -->
<script>
$(document).ready(function(){
$('#id_book_now').click(function(){
yaCounterххххх.reachGoal('celi_metrika'); return true;
});
});
</script>

Консоль пишет ошибку
Uncaught TypeError: $ is not a function
at (index):430
где выделяется
$(document).ready(function(){

Dilettante_Pro 04.05.2017 11:34

INDUK,
А библиотека jQuery подключена?

Можно и без jQuery
http://learn.javascript.ru/onload-ondomcontentloaded

INDUK 04.05.2017 13:06

Цитата:

Сообщение от Dilettante_Pro (Сообщение 451585)
INDUK,
А библиотека jQuery подключена?

Можно и без jQuery
http://learn.javascript.ru/onload-ondomcontentloaded

Как узнать если библиотека подключена?
библиотека jQuery весит неплохо, да и конфликтовать может.

Как сделать без jQuery?

Dilettante_Pro 04.05.2017 13:45

Без jQuery:
Вместо
$(document).ready(function(){
   $('#id_book_now').click(function(){
      yaCounterххххх.reachGoal('celi_metrika'); return true;
   });
});

Вставить
window.onload = function() {
   document.querySelector('#id_book_now').onclick  = function(){
       yaCounterххххх.reachGoal('celi_metrika'); return true;
   };
};


Часовой пояс GMT +3, время: 22:26.