placeholder是html5<input>标签的一个属性,placeholder 属性提供可描述输入字段预期值的提示信息(hint)。该提示会在输入字段为空时显示,并会在字段得到焦点时消失。html
注释:placeholder 属性适用于如下的 <input> 类型:text, search, url, telephone, email 以及 password。html5
例子: 浏览器
<!DOCTYPE HTML>
<html>
<body>this
<form action="/example/html5/demo_form.asp" method="get">
<input type="search" name="user_search" placeholder="Search W3School" />
<input type="submit" />
</form>url
</body>
</html>spa
实际效果:3d
输入字符后:orm
目前浏览器的支持状况htm
浏览器 | IE6/7/8/9 | IE10+ | Firefox | Chrome | Safari |
是否支持 | NO | YES | YES | YES | YES |
然而,虽然IE10+支持placeholder属性,它的表现与其它浏览器也不一致blog
那么对于IE6-9的浏览器怎么办呢,处理这类兼容性有关的问题,少不了浏览器的判断。可是通常的解决核心是要判断的不是是否是IE(因之后IE会支持), 而是是否支持placeholder属性。请参见以下代码:
js代码:
//判断是否支持placeholder
function _placeholderSupport(){
function placeholderSupport(){
return 'placeholder' in document.createElement('input');
}
if(!placeholderSupport()){
$('[placeholder]').focus(function(){
var input = $(this);
if(input.val() == input.attr('placeholder')){
input.val('');
input.removeClass('placeholder');
}
}).blur(function(){
var input = $(this);
if(input.val() == ''||input.val() == input.attr('placeholder')){
input.addClass('placeholder');
input.val(input.attr('placeholder'));
}
}).blur();
};
}
html代码:
<input id="telephone_number" type="text" class="fl" size="18" style="padding:8px 0;font-size:20px;font-weight:bold;" placeholder="请输入电话号码"/>
参考地址:http://www.w3school.com.cn/tags/att_input_placeholder.asp