许多重视用户体验的设计师都希望给文本框(input)加上获取焦点或者鼠标悬停时的样式切换效果。其实很简单,我们只需要获取页面上的文本框,加上onfocus事件或者其他对应的事件即可。本文介绍了如何在获取焦点时切换样式,明白原理后,实现其他效果就很简单了。
--------------------------------------------------------------
点此浏览示例文件
--------------------------------------------------------------
Javascript:
-
-
<script type="text/javascript">
-
// 说明:文本框(input)获取焦点(onfocus)时样式改变的实现方法
-
// 整理:http://www.CodeBit.cn
-
-
// focusClass : 获取焦点时的样式
-
// normalClass : 正常状态下的样式
-
function focusInput(focusClass, normalClass) {
-
var elements = document.getElementsByTagName("input");
-
for (var i=0; i < elements.length; i++) {
-
if (elements[i].type != "button" && elements[i].type != "submit" && elements[i].type != "reset") {
-
elements[i].onfocus = function() { this.className = focusClass; };
-
elements[i].onblur = function() { this.className = normalClass||''; };
-
}
-
}
-
}
-
</script>
-
测试代码:
HTML:
-
-
<style type="text/css">
-
.normalInput {
-
border:1px solid #ccc;
-
}
-
.focusInput {
-
border:1px solid #FFD42C;
-
}
-
</style>
-
-
<script type="text/javascript">
-
window.onload = function () {
-
focusInput('focusInput', 'normalInput');
-
}
-
</script>
-
-
文本框:
<input type="text" class="normalInput" />
-