Dette blot for dem der har interesse.
Ordbogen er nu lagt i database - og det er stadig ordbogen fra
vinsiderne.dk, der leverer test-data, hvorfor
http:// er udeladt fra
link.
Der er oprettet to tabeller: en der kobler ord sammen med anchors, og
en der kobler anchors sammen med forklaringen.
Det muliggør flere begreber til samme forklaring, ligesom der er ændret
en smule i js og rutiner til markering, så det faktisk er muligt
manuelt at koble ord, der ikke findes i ordbogen sammen med en
eksisterende forklaring. Der er desuden sat plads til en sprogkode, så
det skulle være muligt at få skærmlæsere til at oplæse disse ord, på
deres oprindelige sprog. Og der er sat plads af til en overskrift til
forklaringerne (ingen af disse to ekstra felter er dog taget i brug
endnu, ligesom der ikke findes flere forklaringer til samme ord endnu.
Det er stadig Prebens oprindelige data der anvendes).
En husker:
Det der var nok det alvorligste problem, var forkert placering af
popup-forklaringen i visse browsere, og at Opera ikke reagerede på den
første mouseover.
I IE blev forklaringerne anbragt forkert ved mouseover, men rigtigt ved
tabbing gennem anchors. For simpelhedens skyld, gjorde Chrome så
omvendt: anbragte forklaringerne rigtigt ved mouseover, men forkert ved
focus.
Det er ikke lykkedes mig at finde ud af hvad det er der gør denne
forskel - det er fysisk de samme beregning der udføres, den samme
funktion der kaldes.
(Har haft lidt eksperimentering inde over: forklaringsfeltet ligge i IE
og Chrome i øverste højre hjørne (0,0) har højde 0px og bredde 0px
(offsetTop, offsetLeft, offsetHeight og offsetWidth er alle 0) - så
hvordan de faktisk blev vist, er lidt af en gåde...)
Nu vil jeg så referere til
bbsorensen.com/ordbog/?men=Test - virker ikke i IE7 eller
kompatibilitet.
Et klik på knappen "Test tekst" vil automatisk indsætte en tekst, der
kan anvendes til Test - pudsigt nok...
(Der optræder 9 valideringsfejl, som skyldes HTML tags i teksten i
textarea, der viser test-teksten, der er kompileret fra vinsiderne.dk,
og krydret med 3 manuelt indsatte link, for begreber der p.t. ikke
findes i ordbogen, men alligevel har en forklaring der - det er en del
af testen :') )
Jeg har foretaget nogle ændringer.
Først er mouseover på link der skal vise en forklaring, ændret til blot
at fokusere linket. Men fokusering af linket bevirkede i forvejen at
forklaringen vises.
Når linket er fokuseret, vises forklaringen. Derfor er der på linkene
og på forklaringen, tilført en mouseout, der fjerner fokus fra linket -
ellers ville forklaringen blive stående, til et nyt link fokuseres,
hvilket er meget lidt praktisk. Nu skal man altså føre musen ud af link
eller forklaring, for at den fjernes. Hvilket svarer til den måde det
virkede på før ændringerne.
Der er tilføjet beregning, så forklaringen ikke overskridder det felt
teksten vises i. For at dette kan have effekt, skal det/de elementer
der viser teksten med link, have position:relative. (Det er den gamle
"hasLayout" - elementet skal have dimensioner).
Når det så er gjort, virker tingene faktisk efter hensigten!
Nåh, ja. Næsten.
FF og IE8 gør rigtigt.
Opera gør rigtigt - også ved første mouseover!
Chrome har et problem med noget matematik. Link i ventre side vises
forkert - lidt for langt til højre, så der kommer scrollbar og teksten
rykker. Tager man musen ned i forklaringen, og tilbage til linket,
flyttes forklaringen til der hvor den burde være - scrollbaren fjernes,
men teksten rykker ikke tilbage, før et andet link vælges (og gentager
man musens bevægelse, flytter forklaringen igen).
Kan ikke påstå jeg forstår det. I beregningen af forklarings position,
indgår linkets position og forklaringens bredde. Og det er de samme tal
hver gang. Men 2+2 er åbenbart ikke nødvendigvis 4 i Chromes udgave af
javascript...
En pudsighed er, at selvom det virker i IE8, kan man se at den har
besvær med at regne - når linkene fokuseres ved mouseover, tegnes en
stiplede box, der indikerer, at linket har fokus. Det er bare ikke på
alle link, denne boks rammer rigtigt - specielt i højre sider, markes
boksen forkert, og i øverste linie, med forkert størrelse.
Prisen er, at det ikke længere er så enkelt at tabbe sig gennem
forklaringerne.
I chrome vises forklaringerne stadig helt galt, når der tabbes.
I Opera går det vist som det plejer - bortset fra at der ikke er system
i rækkefølgen - eller måske er det bare mig der ikke er vant til
Opera...
I IE8 og FF, skal der tabbes 2 gange. Den første vælger det næste link,
som står i forklaringen (hvis der er nogen - ellers virker det som det
skal), men med mindre man har musen over forklaringen, vil den blive
skjult af denne operation, så det link der fokuseres, bliver faktisk
usynligt, efter det er fokuseret. Det er dog til at leve med.
--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk