2009-07-16 31 views
10

Điều tôi muốn làm là hiển thị trường nhập với màu văn bản black.Sự kiện JavaScript - OffFocus?

Sau đó, khi người đó nhấp vào bên trong trường nhập (onfocus), tôi muốn thay đổi màu văn bản thành red.

Sau đó, khi người đó nhấp vào bên ngoài mục nhập đã nhập (không còn tiêu điểm), tôi muốn đổi màu văn bản trở về black.

tôi biết làm thế nào để xử lý các sự kiện JavaScript onfocus sử dụng như sau:

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

Nhưng làm thế nào để xử lý các "tập trung off" để thay đổi màu sắc văn bản trở lại màu đen?

Cảm ơn trước

+1

"ctype" là gì? –

Trả lời

23

hãy thử sử dụng onblur, nó được gọi khi một phần tử mất tập trung.

+0

Đó là một cái tên lạ cho sự kiện JS, nhưng nó hoạt động. Cảm ơn –

+0

đó là một chút kỳ quặc, nhưng nó phù hợp với các sự kiện khác (onclick, onkeyup, onchange, v.v.) – cobbal

+3

@PlezHelp: bạn không nên đọc "onfocus" là "khi 'focus' trở thành 'on'", nhưng là "khi sự kiện 'tập trung' xảy ra, hãy làm ..". Vì vậy, 'onblur' trở thành "khi sự kiện mờ xảy ra, hãy .." (và sau đó bạn cần biết rằng "blur" là đối diện của "focus") –

3

Sử dụng các sự kiện onBlur:

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

chứ không phải sa thải một số JS về sự kiện này, bạn có thể sử dụng bộ chọn css.

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

sẽ thực hiện tương tự mà không cần javascript.

Các vấn đề liên quan