Discussion:
Dialogboks ved klik på visse links
(for gammel til at besvare)
Kim Ludvigsen
2017-08-03 11:19:52 UTC
Permalink
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
brug for lidt hjælp til:

Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?

Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.

Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
DK8700
2017-08-07 19:54:44 UTC
Permalink
Post by Kim Ludvigsen
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?
Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.
Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
Hej Kim,

Er langt fra ekspert, så lavede en lille søgning og fandt denne
løsning, som du måske kan bruge...:
https://stackoverflow.com/questions/8498592/extract-hostname-name-from-s
tring ?
Kim Ludvigsen
2017-08-07 21:02:39 UTC
Permalink
Post by DK8700
Post by Kim Ludvigsen
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?
Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.
Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
Hej Kim,
Er langt fra ekspert, så lavede en lille søgning og fandt denne
https://stackoverflow.com/questions/8498592/extract-hostname-name-from-s
tring ?
Tak for forsøget!

Jeg har dog opgivet. Jeg kan godt opfange klikket på linket og forhindre
den sædvanlige handling (åbning af siden), men jeg kan simpelthen ikke
finde ud af at aflæse det link, der er klikket på som en streng -
inklusive alle linkets parametre.

Jeg havde håbet på en løsning, hvor jeg kunne tilføje noget kode i
index-filen i stedet for at skulle ind og rette i alle linkene i
databasen, men der er nok ikke nogen vej udenom, selvom det også betyder
en hel del ekstra tekst til dialogbokse ved hvert link i stedet for at
kunne genbruge.
--
Mvh. Kim Ludvigsen
Jan Hansen
2017-08-08 04:44:28 UTC
Permalink
Post by Kim Ludvigsen
Jeg har dog opgivet. Jeg kan godt opfange klikket på linket og forhindre
den sædvanlige handling (åbning af siden), men jeg kan simpelthen ikke
finde ud af at aflæse det link, der er klikket på som en streng -
inklusive alle linkets parametre.
Er det ikke bare document.activeElement.href ?
Det her kan skrive på siden, hvor man er på vej hen, og lave baggrunden
rød, i et kort øjeblik imens browseren søger efter den nye side.

window.onbeforeunload = tjekLink;
function tjekLink()
{
var nySide = document.activeElement.href;
document.getElementById('info').innerHTML = nySide;
document.body.style.backgroundColor = "red";
alert ('Du er på vej til ' + nySide);
}


I konqueror (Version 4.14.7) virker linien med "alert" også. Problemet
er, at det er sparet væk i de fleste andre browsere. Fra
<https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/
onbeforeunload>
"Since 25 May 2011, the HTML5 specification states that calls to
window.alert(), window.confirm(), and window.prompt() methods may be
ignored during this event. "
--
mvh Jan.
Help Microsoft stamp out piracy. Give
Linux to a friend today!
DK8700
2017-08-08 13:38:26 UTC
Permalink
Post by Kim Ludvigsen
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?
Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.
Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
Hej igen Kim,

Jeg vil gerne hjælpe dig, men inden jeg kaster mig ud i "projektet", skal et par ting lige være på det rene...

1: Du vil åbne forskellige dialogbokse for forskellige link-adresser?
- Altså ved klik på link til http://a.com/ åbner "Dialogboks A", ved klik på link til http://b.com/ åbner "Dialogboks B" o.s.v...??

2: Du må påregne noget ventetid på svar, da jeg selv er under "oplæring" i jQuery - men eftersom jeg selv har fået meget hjælp her i grupperne, er jeg villig til at gøre en ihærdig indsats.


Med venlig hilsen

Dennis Munding
Kim Ludvigsen
2017-08-08 18:00:34 UTC
Permalink
Post by DK8700
Hej igen Kim,
Jeg vil gerne hjælpe dig, men inden jeg kaster mig ud i "projektet", skal et par ting lige være på det rene...
1: Du vil åbne forskellige dialogbokse for forskellige link-adresser?
- Altså ved klik på link til http://a.com/ åbner "Dialogboks A", ved klik på link til http://b.com/ åbner "Dialogboks B" o.s.v...??
2: Du må påregne noget ventetid på svar, da jeg selv er under "oplæring" i jQuery - men eftersom jeg selv har fået meget hjælp her i grupperne, er jeg villig til at gøre en ihærdig indsats.
Med venlig hilsen
Dennis Munding
Hej Dennis - jeg vidste ikke, at det var dig, der var var DK8700.

Jeg har faktisk ikke opgivet alligevel. Efter at have brugt nogle timer
i dag, har jeg fundet ud af noget af det, der drillede - ikke mindst at
fiske indholdet i det påklikkede link (href og andre dele) ud, så det
kan genbruges.

1. Nej, det er sådan set den samme boks, men indholdet i boksen skal
afhænge af linket. Det er nemlig meningen, at påklikkede link skal
gengives i boksen efter en standard-tekst.

2. Jeg vil være meget glad for hjælp med at komme videre, hvis du ikke
har problemer med, at det er, fordi jeg vil "tjene penge" på siden.

Det er til min Thailand-side, hvor jeg vil åbne en dialogboks med en
tekst om, at jeg vil være glad, hvis brugeren benytter mine links, når
de booker hotel. Jeg har fundet ud af, at en del klikker på linkene til
hoteller, men de booker ikke. Det kan så være fordi, de kun var
nysgerrige, eller fordi de venter med at booke til senere.

Jeg vil kæmpe lidt videre de nærmeste par dage, og når jeg har lidt mere
styr på, hvad jeg mangler og ikke kan finde ud af, vil jeg vende tilbage.
--
Mvh. Kim Ludvigsen
DK8700
2017-08-08 13:58:15 UTC
Permalink
Post by Kim Ludvigsen
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?
Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.
Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
Alle gode gange tre...

Jeg har lavet en lille test/skabelon her, som du måske kan drage nytte af:
https://jsfiddle.net/zunLr4ga/


Med venlig hilsen

Dennis Munding
DK8700
2017-08-08 20:06:05 UTC
Permalink
Post by Kim Ludvigsen
Er der stadig nogle tilbage her? Jeg har et lille problem, som jeg har
Jeg har nogle links på mine sider. Hvis der er sat en bestemt cookie,
skal linket fungere som normalt. Hvis cookien ikke er sat, skal der i
stedet åbnes en dialogboks (med JQuery) med en standard-tekst, og
nederst i boksen skal linket indsættes (inklusive alle parametre i
linket), så man kan klikke sig videre, og der skal så sættes en cookie,
så dialogboksen ikke åbnes næste gang. Er det muligt at gøre dette uden
at skulle ind og rette samtlige links med ekstra kode til at tjekke
cookie, åbne dialogboks osv?
Jeg kan godt selv sætte koden sammen til at tjekke cookie, åbne
dialogboks osv., hvis jeg gør det i forbindelse med hvert links, men jeg
har ingen ide om, hvordan jeg kan gøre det "centralt". Det er ikke alle
links på en side, der skal udløse dialogboksen, kun links der fører til
et bestemt domæne, fx kun links til http://xyz.com og ikke links til
http://zzz.com, http://yyy.com og alle andre steder.
Mit kendskab til JavaScript er yderst begrænset, så hvis du kan hjælpe,
så gerne en helt nede på jorden-forklaring,
--
Mvh. Kim Ludvigsen
Hej Kim,

Det er mit dæknavn (Goodyear!) :-D
Og nej - er ikke kvalificeret til Michelin endnu... :-P

Seriøst: Kan pludselig ikke sende via min sædvanlige newsreader (Xananews), så er nødt til at bruge Google groups.


1: Det burde kunne løses forholdsvis nemt - selv for mig. :-)
Men en kopi af dit setup ville være en stor hjælp.

2: Du kan altid give mig 10% af overskuddet... ;-P
Det går nok. :-)

En kopi af dit setup (html og evt. jQuery) ville være en hjælp.
Du kan enten smide det her, bruge jsfiddle.net eller smide en mail til: mr_noface2002 (indsæt sjovt a her) yahoo.dk

Jeg lærer med garanti noget nyt, så helt spildt er tiden ikke. :-)


Med venlig hilsen

Dennis Munding
Kim Ludvigsen
2017-08-08 22:02:40 UTC
Permalink
Post by DK8700
En kopi af dit setup (html og evt. jQuery) ville være en hjælp.
Du kan enten smide det her, bruge jsfiddle.net eller smide en mail til: mr_noface2002 (indsæt sjovt a her) yahoo.dk
Jeg vil prøve at lave en prøveside i løbet af en dag eller to med det,
jeg har fundet ud af at lave. Den vil nok ikke være så velegnet til
offentliggørelse, så jeg sender dig en mail.
--
Mvh. Kim Ludvigsen
DK8700
2017-08-09 15:11:21 UTC
Permalink
Post by Kim Ludvigsen
Post by DK8700
En kopi af dit setup (html og evt. jQuery) ville være en hjælp.
Du kan enten smide det her, bruge jsfiddle.net eller smide en mail til: mr_noface2002 (indsæt sjovt a her) yahoo.dk
Jeg vil prøve at lave en prøveside i løbet af en dag eller to med det,
jeg har fundet ud af at lave. Den vil nok ikke være så velegnet til
offentliggørelse, så jeg sender dig en mail.
Hej Kim,

Har lagt noget op til dig her: https://test.dm-web.dk/KL/


Er det noget i den stil?

Tjek kildekoden for info. :-)


Med venlig hilsen

Dennis Munding
Kim Ludvigsen
2017-08-09 16:47:59 UTC
Permalink
Post by DK8700
Har lagt noget op til dig her: https://test.dm-web.dk/KL/
Hej Dennis

Ja, det er noget i den stil. Jeg sender dig lige en mail.
--
Mvh. Kim Ludvigsen
Loading...