2009-07-16 15 views
10

Co chcę zrobić, to wyświetlić pole wprowadzania o kolorze tekstu black.JavaScript - Zdarzenie OffFocus?

Następnie, gdy osoba kliknie w polu wprowadzania (onfocus), chcę zmienić kolor tekstu na red.

Następnie, gdy osoba kliknie poza wejście (nie będzie już skupiać się), chcę zmienić kolor tekstu z powrotem na black.

umiem obsłużyć zdarzenia JavaScript onfocus przy użyciu następujących:

<input ctype="text" onfocus="this.style.color='red';" /> 

Ale w jaki sposób poradzić sobie z „off Focus”, aby zmienić kolor tekstu z powrotem do czerni?

góry dzięki

+1

Co to jest "ctype"? –

Odpowiedz

23

spróbuj onblur, nazywa się to, gdy element traci fokus.

+0

To dziwna nazwa zdarzenia JS, ale działa. Dzięki –

+0

jest to trochę dziwne, ale pasuje do innych wydarzeń (onclick, onkeyup, onchange itp.) – cobbal

+3

@PlezHelp: nie powinieneś czytać "onfocus" jako "kiedy" focus "staje się" na ", ale jako "kiedy zdarza się wydarzenie" skupienia ", rób ...". Tak więc "onblur" staje się "kiedy zdarza się rozmycie, zrób ..." (a następnie musisz wiedzieć, że "rozmycie" jest przeciwieństwem "ostrości") –

3

Użyj zdarzenie onBlur:

<input ctype="text" onfocus="this.style.color='red';" onblur="this.style.color='black';"/> 
2

zamiast strzelać trochę JS na zdarzenie, można użyć selektorów CSS.

#someInput:focus { color: red; } #someInput { color: black; }

zrobi to samo bez javascript.

Powiązane problemy