王志广的个人分享

        王志广的个人分享 >> JS >> html5 placeholder兼容问题

html5 placeholder兼容问题

admin发表于2013-04-12  2,967次浏览 标签: 

html5提供了一个友好提示功能placeholder,但是令人头疼的是ie对它不支持,然后本人在网上总结。

function placeholderSupport(){
return ‘placeholder’ in document.createElement(‘input’);
}
//第一种方法type=password这个不显示
$(document).ready(function(){
var doc=document,inputs=doc.getElementsByTagName(‘input’),supportPlaceholder=’placeholder’in doc.createElement(‘input’),placeholder=function(input){var text=input.getAttribute(‘placeholder’),defaultValue=input.defaultValue;
if(defaultValue==”){
input.value=text
}
input.onfocus=function(){
if(input.value===text){this.value=”}};
input.onblur=function(){if(input.value===”){this.value=text}}};
if(!supportPlaceholder){
for(var i=0,len=inputs.length;i<len;i++){var input=inputs[i],text=input.getAttribute(‘placeholder’);
if(input.type===’text’&&text){placeholder(input)}}
}
});

//第二种方法这个如果type=password不太友好

$(function(){
if(!placeholderSupport()){   // 判断浏览器是否支持 placeholder
$(‘[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();
};
})

你可以发表评论引用到你的网站或博客,或通过RSS 2.0订阅这个日志的所有评论。
上一篇:
下一篇:
没有评论
我来说两句

  Ctrl+Enter