Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  JS sündmuste loendamine märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
sakunne
HV veteran
sakunne

liitunud: 15.12.2004



Autoriseeritud ID-kaardiga

sõnum 24.03.2020 09:50 JS sündmuste loendamine vasta tsitaadiga

Mul on JS lehel järgmine rida

document.referrer.split('/')[2]

ehk siis lehel toimuvad sündmused, kuidas neid loendada - ehk siis teada mitmes sündmus toimub?

_________________
Kuna ei pruugi õigel ajal foorumisse sattuda:
Tel: 5051598
Email sakunne@seenior.ee
Kommentaarid: 76 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 68
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004



Online

sõnum 24.03.2020 16:45 vasta tsitaadiga

Eks pead kuhugi muutujasse salvestama loendurit.
Näiteks:
javascript:
  1. if(window.hasOwnProperty("myCounter")) {
  2.   window.myCounter++;
  3. } else {
  4.   window.myCounter = 1;
  5. }
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
crycx
HV vaatleja

liitunud: 06.04.2012




sõnum 24.03.2020 23:23 vasta tsitaadiga

Mida sa ikkagi täpsemalt loendada tahad ? Seda, et millal see kood jookseb (eeldan, et tead mida see kood teeb) ?

let ref = document.referrer.split('/')[2]
console.log(ref)

Siis näed konsoolist kui kood jooksutatakse. Võid ps või emaili teel ühendust võtta ja täpsemalt selgitada.
Kommentaarid: 12 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 11
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
sakunne
HV veteran
sakunne

liitunud: 15.12.2004



Autoriseeritud ID-kaardiga

sõnum 26.03.2020 13:59 vasta tsitaadiga

crycx, tahan loendada millala tekib sündmus

document.referrer.split('/')[2]

st lehele pöördutakse kohalikult domeenilt

_________________
Kuna ei pruugi õigel ajal foorumisse sattuda:
Tel: 5051598
Email sakunne@seenior.ee
Kommentaarid: 76 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 68
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
s6dalane
HV vaatleja

liitunud: 31.12.2004



Autoriseeritud ID-kaardiga

sõnum 28.03.2020 12:25 vasta tsitaadiga

Kas ma saan õigesti aru, et soov on saada midagi algelise Google Analytics moodi?
Kui jah, siis on vaja back-endi, kuhu sündmuse korral info saata ja siis mingisugusesse andmebaasi salvestada.
Kommentaarid: 13 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum
Hazar
Kreisi kasutaja
Hazar

liitunud: 24.08.2004




sõnum 28.07.2020 02:47 vasta tsitaadiga

Kui see rida lahti lammutada

document - praeguse lehekülje kontekst
.referrer - kus kohast sa antud dokumendile tulid (ehk kui vajutasid linki kuskil lehel siis selle lehe aadress kus sa linki vajutasid)
.split('/') - stringifunktsioon mis lammutab aadressi juppideks, nt. "https://www.hv.ee" muutub ["https:", "", "www.hv.ee"]
[2] - võtab split funktsioonist saadud arrayst kolmanda jupi, ehk siinpuhul "www.hv.ee"

Ehk pmst kui seda rida väärtusena käsitleda siis annab see sulle kas eelmise lehekülje domeeni kui sa sealt klikkisid või undefined (kuna document.referrer.split("/") on [] sellisel juhul) kui sa otse aadressi sisse tippisid, sündmusega pole siin midagi pistmist.

Kui tahad ära lugeda, et mitu korda sinu lehel ringi klikiti saabumisest alates, siis saad seda teha antud koodirida oma domeeni nime vastu kontrollides iga kord kui lehekülg laeb. Siis pead seda väärtust kuskil loendama ka, front-endi poolt saad teha seda cookie või browser local storage väärtusega.

Näiteks:

(function(){
    // Võtame praeguse väärtuse. Kui localStorage sellise võtmega väärtust ei oma siis on tulemuseks null mille parseInt() muundab NaNiks. Kuna NaN boolean väärtus on false siis võetakse || operaatoriga kasutusele parema käe väärtus ehk 0.
    var praegune = parseInt(localStorage.getItem("loendan_klikke")) || 0;                 
    // Vaatame mis referreri domeen oli. Kui on õige väärtus siis lisame praegusele 1, kui on vale siis nullime ära.
    if (document.referrer.split("/")[2] === "foorum.hinnavaatlus.ee") praegune++;
    else praegune = 0;
    // Talletame uue väärtuse localStoreisse.
    localStorage.setItem("loendan_klikke", praegune);
    // Anname väärtusest teada. Õigekirja tagamiseks muudame "kord" ära "korda" ainult juhul kui praegune väärtus ei ole 1.
    alert("oled ringi klikkinud " + praegune + " kord" + (praegune !== 1 ? "a" : ""));
})();

_________________
Sinuweb valmistab kodulehekülgi
Kommentaarid: 26 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  JS sündmuste loendamine
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.