网页上默认的文本框老是灰色风格,看的都有点不耐烦了,用CSS和JS改变其样式是大家都喜欢用的方法,今天写了一个点击边框变色的文本框,鼠标点击文本框将要输入的时候,文本框自动变色高亮显示,非常有视觉效果,让文本框变漂亮了许多。HTML代码如下:
04 |
<meta http-equiv="Content-Type" content="textml; charset=utf-8" /> |
05 |
<title>输入框点击时边框变色效果</title> |
08 |
<script type="text/javascript"> |
09 |
// focusClass : 获取焦点时的样式 |
10 |
// normalClass : 正常状态下的样式 |
11 |
function focusInput(focusClass, normalClass) { |
12 |
var elements = document.getElementsByTagName("input"); |
13 |
for (var i=0; i < elements.length; i++) { |
14 |
if (elements[i].type != "button" && elements[i].type != "submit" && elements[i].type != "reset") { |
15 |
elements[i].onfocus = function() { this.className = focusClass; }; |
16 |
elements[i].onblur = function() { this.className = normalClass||‘‘; }; |
21 |
<script type="text/javascript"> |
22 |
window.onload = function () { |
23 |
focusInput(‘focusInput‘, ‘normalInput‘); |
26 |
请输入姓名:<input type="text" class="normalInput" /> |
27 |
<style type="text/css"> |
28 |
.normalInput {border:1px solid #ccc;} |
29 |
.focusInput {border:1px solid #FFD42C;} |
在火狐下也有效,只不过火狐和chrome下,这两款浏览器默认会自动会输入框添加点击效果,所以有时候看不清,IE下表现突出。