ajax -> js vraag
Ik ben bezig met een interne webapplicatie en momenteel maak ik gebruik van frames. Maar om nou de gebruikersvriendelijkheid en snelheid te verhogen heb ik me de laatste tijd verdiept in AJAX.
Dat hele php gedoe en gegevens ophalen snap ik wel, maar nu wil ik nog iets leuks met javascript, maar ik heb geen idee hoe.
Nu is het zo: Je typt in voetbal, en zodra je de derde letter intypt laat hij een lijst zien met 10 resultaten, hoe meer letters je intypt hoe specifieker die lijst wordt. Dat is perfect.
Je kan ook met TAB of PIJL OMLAAG en PIJL OMHOOG navigeren. Maar nu loop ik tegen het probleem dat ik die lijst (met resultaten) niet wegkrijg. Dus ik als ik nu geen mogelijkheid kies maar met de muis ergens anders klik, dan gaat dat niet weg, logisch ook.
Daarnaast is ook de 'geselecteerde' (met tab of pijltjes) of 'gehoverde' (met muis) keuze blauw. Voor muis doe ik dit met css(hover), voor tab of pijltjes pas ik de css aan met javascript(color en backgroundcolor).
Verder wordt de lijst met gegevens in een div gegoten, waarin de items weer in een ul -> li staan.
De eisen zijn:
-navigatie dmv, pjiltjes, tab en muis
-selecteerde of gehoverde keuze moet andere stijl hebben
-venster moet sluiten zodra de focus van de lijst of het tekst veld verloren is
-voorbeeld: Google suggest, dat zou de ideale oplossing zijn :)
Hoe krijg ik dat weg? Nou ik heb al een aantal manieren maar ik heb of nog niet fatsoendelijks of IE ondersteunt het niet.
- Als je de focus van het tekst veld en resultaten verliest. Ecter IE ondersteunt niet een soort 'defocussed'-functie.
-Met ul hover dacht ik al, maar :hover wordt door IE alleen bij links ondersteunt
De oplossing moet door IE ondersteunt worden, dat is de browser die intern gebruikt wordt.
Alvast bedankt
Gewijzigd op 06/12/2005 11:12:00 door Mischa Gorinskat
Dat is de 'defocus' functie volgens mij
onBlur is inderdaad de zogenaamde on_focus_lost van VB in combinatie met access :P Dus dat zou in principe moeten werken dan Willem-Jan
Ik vond het moeilijk om het probleem uit te leggen maar onBlur() helpt mijn probleem niet. Dan kan ik nl nog niet checken of een van die andere suggesties focussed is? Snap je?
Met FF kan die focussed wel, dus vandaar dat ik daarna verwees
de script.aculo.us bibliotheek heeft deze functie als standaardfunctie ingebrouwd. Zie dit voorbeeld.
En zij pakken het anders aan. Zij kiezen voor allen muisfunctionaliteit, dus ze kunnen niet met de pijltjes bewegen, wat voor mijn interne applicatie van belang is aangezien er veel alleen met het toetsenbord wordt gedaan.
Wederom bedankt.
Ik lees nu: http://serversideguy.blogspot.com/2004/12/google-suggest-dissected.html
Maar die js code is wel pokke lastig zeg en moeilijk om het uberhaupt te snappen. :P
Maar als je echt alleen met het toetsenbord aan het zoeken bent, dan moet je denk ik toch gaan kijken naar een <select/>-box. De support voor de muis daarbij is vele malen groter dan welk javascript dan ook.