/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
JavaScript kald ved tryk på link
Fra : Rune Jensen


Dato : 17-03-09 19:41

Jeg viulle gerne, at man kan lave en lille statistik over de mest
klikkede links på hjemmesiden.

Dette gælder i starten mest min linksside, som skal registrere links væk
fra siden. Men senere ville jeg også gerne have links imellem siderne med

Jeg overvejer en onUnload, og så en check af, hvilket link, som er
klikket i det øjeblik - altså at det registreres, når siden forlades -
fordi jeg ikke er så interesseret i links indenfor samme side.

Javascriptet kan for så vidt bare kalde en funktion, som opdaterer en
tæller på det link (skal nok laves serverside - men serversiden kan jeg
nok greje).


Er dette muligt? Skulle gerne kunne lægges "ned over siden", sådan man
ikke skal tildele hvert link en class. Er der ikke en funktion som
hedder this, som er det actuelle element, og som kan bruges til det?

Bare interesseret i, nogen kan lede mig i den rigtige retning

;)


MVH
Rune Jensen

 
 
Jens Peter Karlsen (17-03-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 17-03-09 20:21

Brug et analyse værktøj som Webtrends på server loggen.

Regards Jens Peter Karlsen.

On Tue, 17 Mar 2009 19:41:20 +0100, Rune Jensen
<runeofdenmark@gmail.com> wrote:

>Jeg viulle gerne, at man kan lave en lille statistik over de mest
>klikkede links på hjemmesiden.

Rune Jensen (17-03-2009)
Kommentar
Fra : Rune Jensen


Dato : 17-03-09 20:23

Jens Peter Karlsen skrev:
> Brug et analyse værktøj som Webtrends på server loggen.

Desværre var det ikke et svar på mit spørgsmål. Jeg er interesseret i en
JS-løsning.


MVH
Rune Jensen

Rune Jensen (17-03-2009)
Kommentar
Fra : Rune Jensen


Dato : 17-03-09 20:29

Rune Jensen skrev:
> Jens Peter Karlsen skrev:
>> Brug et analyse værktøj som Webtrends på server loggen.
>
> Desværre var det ikke et svar på mit spørgsmål. Jeg er interesseret i en
> JS-løsning.

En uddybelse:

Jeg er ikke interesseret i på nogen måde tredje parts software eller
statistik. Dette er fuldstændigt og aldeles udelukket.

JS-løsningen skal bruges til en live-update af popularitet (bl.a.).


MVH
Rune Jensen

Rune Jensen (17-03-2009)
Kommentar
Fra : Rune Jensen


Dato : 17-03-09 21:26

Rune Jensen skrev:
> Jeg viulle gerne, at man kan lave en lille statistik over de mest
> klikkede links på hjemmesiden.
>
> Dette gælder i starten mest min linksside, som skal registrere links væk
> fra siden.

Jeg har fundet følgende - men det skal modificeres? Baseres på, at hvert
udgående link har en rel="external". Det kan jeg godt godtage, da den
ekstra kode ikke generer.

http://www.sitepoint.com/print/javascript-from-scratch/

Opening Off-site Links in a New Window
.......................................

Example 7.5. offsite-links.js

document.onclick = function(e)
{
var target = e ? e.target : window.event.srcElement;

while (target && !/^(a|body)$/i.test(target.nodeName))
{
target = target.parentNode;
}

if (target && target.getAttribute('rel')
&& target.rel == 'external')
{
var external = window.open(target.href);

return external.closed;
}
}

man kan vel udskifte "Åbn i nyt window" med "kald asp-fil på server"?
Kan man det med URLen som en parameter?


MVH
Rune Jensen

Stig Johansen (18-03-2009)
Kommentar
Fra : Stig Johansen


Dato : 18-03-09 00:37

Rune Jensen wrote:

> Jeg overvejer en onUnload, og så en check af, hvilket link, som er
> klikket i det øjeblik - altså at det registreres, når siden forlades -
> fordi jeg ikke er så interesseret i links indenfor samme side.
>
> Javascriptet kan for så vidt bare kalde en funktion, som opdaterer en
> tæller på det link (skal nok laves serverside - men serversiden kan jeg
> nok greje).
>
>
> Er dette muligt? Skulle gerne kunne lægges "ned over siden", sådan man
> ikke skal tildele hvert link en class. Er der ikke en funktion som
> hedder this, som er det actuelle element, og som kan bruges til det?
>
> Bare interesseret i, nogen kan lede mig i den rigtige retning

Du kan bruge getElementsByTagname til at finde alle <a> tags.
For hver af dem kan du teste på om href er forskellig fra dine interne
links.
De eksterne links kan du så tilføje en eventhandler på eksempelvis
mousedown.
I eventandleren kan du lave et ajax kald til en server funktion, hvor du
poster href'en til din statistik.

--
Med venlig hilsen
Stig Johansen

Rune Jensen (18-03-2009)
Kommentar
Fra : Rune Jensen


Dato : 18-03-09 03:48

Stig Johansen skrev:

> Du kan bruge getElementsByTagname til at finde alle <a> tags.
> For hver af dem kan du teste på om href er forskellig fra dine interne
> links.
> De eksterne links kan du så tilføje en eventhandler på eksempelvis
> mousedown.
> I eventandleren kan du lave et ajax kald til en server funktion, hvor du
> poster href'en til din statistik.

Jep, det er lige nøjagtig i den retning.. det generer ikke brugeren, og
samler ikke "bot-hits" op.

Og noget af det kan jeg nok gøre umiddelbart, f.eks. at finde hreferne,
men det kan være, jeg vender tilbage lige med et par spørgsmål mere.

Bl.a. ligger der en JS i forvejen, som også bruger
event-handler-tildeling, så de skal nødigt konflikte. Der kommer nok
også lidt omkring selve AJAXen.

Men jeg prøver lige at kigge, når jeg kommer hjem.


MVH
Rune Jensen

Stig Johansen (18-03-2009)
Kommentar
Fra : Stig Johansen


Dato : 18-03-09 06:48

Rune Jensen wrote:

> Og noget af det kan jeg nok gøre umiddelbart, f.eks. at finde hreferne,
> men det kan være, jeg vender tilbage lige med et par spørgsmål mere.

He - du bad kun om at blive ledt i den rigtige retning, ikke om kode
eksempler :)

> Bl.a. ligger der en JS i forvejen, som også bruger
> event-handler-tildeling, så de skal nødigt konflikte.

Kiggede lige.
Vær opmærksom på, at du tildeler .onload både i dit eksterne .js og inline.
Jeg tror vi har snakket om det før, men jeg ville nok foretrække at teste op
mod addeventlistener, der er standard, og alternativt bruge direkta
assignment af .onload.

Jeg kan også se, at dit script tilføjer <a> tags, så det er nok en god ide
at lægge denne her funktion før, så den ikke bladre unødige tags igennem.

> Der kommer nok
> også lidt omkring selve AJAXen.

Jeg vil nok foreslå dig at starte med at lave en almindelig alert af
eks. .href, så du er sikker på de omkringliggende funktioner virker inden
du starter på AJAX delen.

--
Med venlig hilsen
Stig Johansen

Rune Jensen (18-03-2009)
Kommentar
Fra : Rune Jensen


Dato : 18-03-09 01:17

On 18 Mar., 06:47, Stig Johansen <wopr...@gmaill.com> wrote:
> Rune Jensen wrote:
> > Og noget af det kan jeg nok gøre umiddelbart, f.eks. at finde hreferne,
> > men det kan være, jeg vender tilbage lige med et par spørgsmål mere.
>
> He - du bad kun om at blive ledt i den rigtige retning, ikke om kode
> eksempler :)

Man lærer ikke noget af at få resultatet.. Men man er nødt til at
spørge for at lære. Hints er altid godt.
;)

> > Bl.a. ligger der en JS i forvejen, som også bruger
> > event-handler-tildeling, så de skal nødigt konflikte.
>
> Kiggede lige.
> Vær opmærksom på, at du tildeler .onload både i dit eksterne .js og inline.
> Jeg tror vi har snakket om det før, men jeg ville nok foretrække at teste op
> mod addeventlistener, der er standard, og alternativt bruge direkta
> assignment af .onload.
>
> Jeg kan også se, at dit script tilføjer <a> tags, så det er nok en god ide
> at lægge denne her funktion før, så den ikke bladre unødige tags igennem.
>
> > Der kommer nok
> > også lidt omkring selve AJAXen.
>
> Jeg vil nok foreslå dig at starte med at lave en almindelig alert af
> eks. .href, så du er sikker på de omkringliggende funktioner virker inden
> du starter på AJAX delen.

Jeg er klar over, det nok kræver lidt planlægning i forhold til, hvad
jeg oprindeligt tænkte (bare at kode af Karsten Bæld.. eller hvad det
hedder - og så rette fejl henad vejen). Ind i mellem, er det meget
godt, når nogen putter lidt ro på. Resultatet skulle jo også gerne
være pænt. ikke japset afsted.

Men jeg kigger lige når jeg kommer hjem på dit svar.


MVH
Rune Jensen

Erik Ginnerskov (18-03-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 18-03-09 10:51

Rune Jensen wrote:

> Man lærer ikke noget af at få resultatet.. Men man er nødt til at
> spørge for at lære. Hints er altid godt.

Det kan man godt. Men man lærer væsentlig mere, hvis man med kompetent
vejledning laver det selv.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Stig Johansen (18-03-2009)
Kommentar
Fra : Stig Johansen


Dato : 18-03-09 11:14

Rune Jensen wrote:

> Man lærer ikke noget af at få resultatet.. Men man er nødt til at
> spørge for at lære. Hints er altid godt.
> ;)

Af samme årsag har du ikke fået løsningen ;)

--
Med venlig hilsen
Stig Johansen

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste