你一定知道 HTML5新增的 placeholder 属性吧?不知道的也没关系。输入框有默认文本是,常需要这样一个效果,点击让默认文本消失,失去焦点后让默认文本显示。
今天分享一段jQuery代码,模拟 placeholder 效果。
Javascript代码:
function placeHolder(event){
var self = $(this), selfDataValue = self.attr(\"data-value\"), selfValue = self.val();
if(selfDataValue){
event.type == \"click\" ? (selfValue == selfDataValue && (self.val(\"\").css(\"color\",\"#333\"))) : (event.type == \"blur\" && (selfValue == \"\" && (self.val(selfDataValue).css(\"color\",\"#A9A9A9\"))))
}else{
return false;
}
}
$(\".pInputText\").on(\"click blur\",placeHolder);
Html代码:
<input type=\"text\" value=\"在此处搜索\" class=\"pInputText\" />
可能有人会问了,既然html5都提供这样的功能,还有js写干嘛?
这不是废话吗,当然是以为兼容问题,IE要是对HTML5兼容好点的话,谁愿意用js去实现这玩意儿啊。
本文地址:https://www.stayed.cn/item/9903
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我