|
| 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
| |
|
|