本文共 1796 字,大约阅读时间需要 5 分钟。
废话不多,上代码。
我们来做一个最简单的例子,页面内含有一个input及一个textarea,并且这两个标签都需要提示文字的出现,当光标聚焦到标签内时,提示文字消失,而光标离开时,如果框内没有输入文字,则默认文字出现。
我们给标签加上些简单的样式
.defaultColor { color: #d1d1d1!important;//设置默认提示文字的样式,此处体现为字体颜色。!important是为了避免颜色样式覆盖}.templateForm input[type="text"] { display: inline-block; width: 260px; height: 30px; line-height: 30px; border: 1px solid #666; font-size: 16px; color: #666;//设置input字体颜色}.textareaDiv textarea { padding: 10px; width: 798px; height: 125px; line-height: 25px; border: 1px solid #666; color: #666;//设置textarea字体颜色}浏览器输出为:
接下来就到了我们要介绍的重点,也就是将提示文字及时出现及消失的功能合并到一起。页面事先引用了jquery,本人用的版本问jquery-1.7.2.min.js。
//站内共用文本框及textarea默认文本,调用 domDefaultTextFun(此段代码可以提取到站内公共js文件内以便各个文件调用)function domDefaultTextFun($dom, $defaultTxt) {//$dom为目标dom节点,$defaultTxt为节点内默认提示的文字 if ($($dom).val() == $defaultTxt) { $($dom).addClass("defaultColor"); } else { $($dom).removeClass("defaultColor"); } $($dom).focus(function(){ if ($($dom).val() == $defaultTxt) { $($dom).val("").removeClass("defaultColor"); } }); $($dom).blur(function(){ if (($($dom).val() == "") || ($($dom).val() == $defaultTxt)) { $($dom).val($defaultTxt).addClass("defaultColor"); } });}
接下来为页面调用上面的 domDefaultTextFun 函数
$(function(){ //input[name='inputName']默认文本效果 domDefaultTextFun("input[name='inputName']", "我是Input,请输入!"); //.textareaDiv textarea默认文本效果 domDefaultTextFun(".textareaDiv textarea", "我是Textarea,请输入!");});
然后页面就这样做好了!以后站内再出现相关的文本域默认提示的情况,只要标签一加,然后函数调用,妥妥的!!
呈现下最后的效果:
转载地址:http://nmchx.baihongyu.com/