/ 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
Har feltet focus?
Fra : Ukendt


Dato : 22-05-02 11:49

Hej

Hvordan kan jeg finde ud af om et felt har focus?

Jeg har prøvet følgende:

<input type="text" onmouseover="if (this.focus==false) { alert('Ikke
focus'); }">

Men det refererer vel til funktionen, der sætter focus til feltet?


På forhånd tak ;)

Thomas Petersen



 
 
Mads Graugaard Hanse~ (22-05-2002)
Kommentar
Fra : Mads Graugaard Hanse~


Dato : 22-05-02 12:40

Thomas Petersen wrote in dk.edb.internet.webdesign.clientside:

> Hvordan kan jeg finde ud af om et felt har focus?

> <input type="text" onmouseover="if (this.focus==false) { alert('Ikke
> focus'); }">

prøv med...

<input type="text" onFocus="alert('Feltet har focus')">


/Mads

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Kim Jensen (22-05-2002)
Kommentar
Fra : Kim Jensen


Dato : 22-05-02 13:33

> > Hvordan kan jeg finde ud af om et felt har focus?
> prøv med...
> <input type="text" onFocus="alert('Feltet har focus')">

Som ikke gør det ønskede!?

Teste om feltet HAR fokus != Udføre noget, når feltet FÅR fokus.


mvh
Kim Jensen



Jakob Andersen (22-05-2002)
Kommentar
Fra : Jakob Andersen


Dato : 22-05-02 14:26

"Kim Jensen" <kj@jmt.dk> wrote in message
news:3ceb8fd0$0$15500$edfadb0f@dspool01.news.tele.dk...
> Som ikke gør det ønskede!?
>
> Teste om feltet HAR fokus != Udføre noget, når feltet FÅR fokus.

Der findes ikke i DOM nogen implementation for at tjekke om der er fokus på
et felt, så du bliver nødt til at lave et hack ala dette:

<html>
<head>
<script type="text/javascript">
function foo(){
objElem = document.getElementById("bar");
if( objElem.active ){alert( "feltet er aktivt" )}
window.setTimeout("foo()", 2000);
}
</script>
</head>
<body onload="foo();">
<input type="text" id="bar" onfocus="this.active = true;"
onblur="this.active = false;"/>
</body>
</html>

Du kan så alternativt sætte scriptet til selv at sætte eventhandlere på alle
input(text) elementer, sådan her:

for(i=0;i<document.forms.length;i++){
for(j=0;j<document.forms[i].elements.length;j++){
if(document.forms[i].elements[j].type == "text"){
document.forms[i].elements[j].onblur = new Function("this.active =
false;");
document.forms[i].elements[j].onfocus = new Function("this.active =
true;");
}
}
}

Ovenstående er testet i IE6, Netscape 6.2 og Opera 6 med positivt resulat.

Tør man spørge hvad det skal bruges til, da jeg næppe tror at ovenstående er
den smarteste løsning.

--
Jakob Andersen



Jørn Andersen (22-05-2002)
Kommentar
Fra : Jørn Andersen


Dato : 22-05-02 14:34

On Wed, 22 May 2002 14:33:29 +0200, "Kim Jensen" <kj@jmt.dk> wrote:

>> > Hvordan kan jeg finde ud af om et felt har focus?
>> prøv med...
>> <input type="text" onFocus="alert('Feltet har focus')">
>
>Som ikke gør det ønskede!?
>
>Teste om feltet HAR fokus != Udføre noget, når feltet FÅR fokus.

Kan du så ikke sætte en variabel, som skifter værdi med onFocus og
onBlur og så teste på den?

Prøv at forklare lidt mere, hvad dit egentlige problem (hvad du vil
opnå), så er der nok større chance for at finde frem til en løsning.


Good luck

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste