Mam kod JavaScript, który znalazłem online, który dostarcza statystyki do google analytics dla mojego wideo HTML5. Kod jednak tylko CORRECTLY wyświetla statystyki "wideo odtwarzane" i "wideo wstrzymane", ale pozostałe informacje nie będą wyświetlane ani nawet obliczać. Reszta informacji jest:Jak naprawić kod JavaScript JavaScript Tracking, który nie działa poprawnie
„25% wideo oglądał” „50% wideo oglądał” „75% wideo oglądał” „100% obejrzanego filmu wideo”.
Jak uzyskać prawidłowy kod? Czy Google Analytics to jedyny sposób śledzenia statystyk lub czy istnieje inny sposób?
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', init, false)
var videoId = document.getElementById('bigvid3')
var videoTitle = videoId.getAttribute('data-description')
var videoTitle = 'bigvid3'
function init() {
videoId.addEventListener('play', videoPlay, false)
\t videoId.addEventListener('pause', videoPause, false)
\t videoId.addEventListener('ended', videoEnd, false)
\t videoId.addEventListener('timeupdate', videoTimeUpdate, false)
}
function setKeyFrames (duration) {
\t var quarter = (duration/4).toFixed(1)
\t sessionStorage.setItem('one', quarter)
\t sessionStorage.setItem('two', (quarter * 2).toFixed(1))
\t sessionStorage.setItem('three', (quarter * 3).toFixed(1))
}
function videoTimeUpdate() {
\t \t var curTime = videoId.currentTime.toFixed(1)
\t \t switch (curTime) {
\t \t \t case sessionStorage.getItem('one'):
\t \t \t \t ga('send', 'event', 'video', '25% video played', videoTitle)
\t \t \t \t sessionStorage.setItem('one', null)
\t \t \t case sessionStorage.getItem('two'):
\t \t \t \t ga('send', 'event', 'video', '50% video played', videoTitle)
\t \t \t \t sessionStorage.setItem('two', null)
\t \t \t case sessionStorage.getItem('three'):
\t \t \t \t ga('send', 'event', 'video', '75% video played', videoTitle)
\t \t \t \t sessionStorage.setItem('three', null)
\t \t }
}
function videoPlay() {
\t ga('send', 'event', 'video', 'video played', videoTitle)
\t setKeyFrames(this.duration)
}
function videoPause() {
\t ga('send', 'event', 'video', 'video paused', videoTitle)
}
function videoTimeUpdate() {
\t ga('send', 'event', 'video', '25% video played', '50% video played', '75% video played', videoTitle)
}
function videoTimeUpdate() {
\t ga('send', 'event', 'video', '25% video played', videoTitle)
}
function videoTimeUpdate() {
\t ga('send', 'event', 'video', '50% video played', videoTitle)
}
function videoTimeUpdate() {
\t ga('send', 'event', 'video', '75% video played', videoTitle)
}
function videoEnd() {
\t ga('send', 'event', 'video', '100% video played', videoTitle)
}
</script>
Przesyłane są tylko zdarzenia z udziałem procentowym, gdy bieżący czas jest ** dokładnie ** taki sam jak obliczenie.Zakładam się, że jeśli zalogujesz te wartości do konsoli, zobaczysz, że są blisko, ale nie na tyle blisko, by dostać cygaro. – moopet
Czy chcesz kliknąć moje wideo prawym przyciskiem myszy -> kliknij inspekcja> kliknij konsolę? Wiem, że kiedy to czytasz, prawdopodobnie będziesz się ze mnie śmiała, ale to w porządku, zupełnie nowe dla JS –