Avatar billede brownghost Nybegynder
08. august 2007 - 17:43 Der er 11 kommentarer og
1 løsning

document.all.keyword.focus FireFox problem

document.all.keyword.focus();

ergo koden ser sådan her ud.

<body onLoad="document.all.keyword.focus();">

<input type="text" name="keyword" value="" style="width: 100%;">

IE kan godt sætte makøren/musen ind der
men det virker ikke i firefox lige pluselig :(
kan det laves på en måde så det virker i firefox også ?
Avatar billede olebole Juniormester
08. august 2007 - 18:26 #1
<ole>

document.getElementsByName("keyword")[0].focus();

/mvh
</bole>
Avatar billede erikjacobsen Ekspert
08. august 2007 - 20:41 #2
Jeg ville nu foreslå

<input type="text" id="keyword" name="keyword" value="" style="width: 100%;">

og så

if (document.getElementsById("keyword")) {
  document.getElementsById("keyword").focus();
}

Altså
1) Bruge et id til at navngive elementet.
2) Derfor bruge getElementById
3) For en funktion, der ikke er essentiel, lige lave en test for om elementet
er der, og laver ingenting, hvis det af en eller anden grund sku' være taget på varmeferie.
Avatar billede cpufan Juniormester
08. august 2007 - 21:14 #3
hvilket et overskud af energi erikjacobsen !!!! thumbs-up

Har du ferie ;-)
Avatar billede brownghost Nybegynder
09. august 2007 - 10:45 #4
Ole det virker ikke: at ligeg den ind i body tag :(
Så giver siden bare script fejl.

Erik, jeg har lagt dit ind såden her.
<script language="JavaScript" type="text/JavaScript">
if (document.getElementsById("keyword")) {
  document.getElementsById("keyword").focus();
}
</script>

men det virker ikke, laver jeg noget forkert i det ?
Avatar billede erikjacobsen Ekspert
09. august 2007 - 11:20 #5
Måssssske fordi jeg sssssatte et bessssstemt bogsssstav for meget ;)

<script language="JavaScript" type="text/JavaScript">
if (document.getElementById("keyword")) {
  document.getElementById("keyword").focus();
}
</script>
Avatar billede olebole Juniormester
09. august 2007 - 12:14 #6
Nok nærmere fordi, brownghost ikke venter med at kalde, til elementet eksisterer i browseren  :)

brownghost >> Du kan jo ikke kalde elementet, før det eksisterer. Vent til window.onload  ;o)
Avatar billede olebole Juniormester
09. august 2007 - 12:15 #7
- og det gælder begge løsninger
Avatar billede brownghost Nybegynder
09. august 2007 - 12:32 #8
ole jeg er ikke helt med.

okay, jeg skal bruge det flere steder,
hvordan kan jeg lige lavet det, så jeg kan kalde det på de sider jeg skal bruge det.
pr har jeg en include der har andre java script ting det kunne ligges der i ?

hvordan kalder jeg det så når jeg skal bruge det, når det er det win.onload ??

og virker det i FF, er det innd win.onload der ikke virker i FF mener jeg at have læst et sted ?
Tak

Erik: virkede ikke ved bare at sætte det ind:
<script language="JavaScript" type="text/JavaScript">
if (document.getElementById("keyword")) {
  document.getElementById("keyword").focus();
}
</script>
Avatar billede brownghost Nybegynder
16. august 2007 - 02:08 #9
Det virker med: onLoad=" document.forms[0].keyword.focus();"
Både i FF og i IE :)

er vist tæt på det Ole skrev.
er der en der vil svare, så giver jeg point :)
Tak..
Avatar billede erikjacobsen Ekspert
16. august 2007 - 10:02 #10
Ingen point til mig, tak. 09/08-2007 12:32:49: "virkede ikke ved bare at sætte det ind"  - nej, og så? Det afhænger af andre ting i scriptet, som du ikke viser. Prøv at give alle relevante oplysninger, hvis du skal have hjælp. Et link er altid det bedste.
Avatar billede brownghost Nybegynder
16. august 2007 - 12:06 #11
Jeps skal nok prøve at komme med mere info næste gang :)

OleBole vil du svare ?
Avatar billede brownghost Nybegynder
08. januar 2008 - 15:15 #12
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester