這篇文章將為大家詳細講解有關(guān)如何讓IE下支持Html5的placeholder屬性的插件,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
目前成都創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、庫爾勒網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
HTML5對Web Form做了許多增強,比如input新增的type類型、Form Validation等。
Placeholder是HTML5新增的另一個屬性,當(dāng)input或者textarea設(shè)置了該屬性后,該值的內(nèi)容將作為灰字提示顯示在文本框中,當(dāng)文本框獲得焦點時,提示文字消失。以前要實現(xiàn)這效果都是用JavaScript來控制才能實現(xiàn) , firefox、google chrome等表示對其支持 , 唯獨IE存在違和感啊!
例如:
介紹一個超強的讓IE下支持placeholder的屬性插件,同時也兼容其他不支持placeholder的瀏覽器,代碼如下:
代碼如下:
$(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
text=input.getAttribute('placeholder');
if(input.type==='text'&&text){
placeholder(input)
}
}
}
});
直接把代碼復(fù)制下來,保存成一個js文件引用即可,不用再做任何處理,超級便利!
ex : 這樣做的確能讓IE的Input顯示placeholder屬性,但是如果頁面上只有一個input還好,如果是多個input,如果出現(xiàn)input沒有填入任何值的話,那么它的空input會自動將placeholder的值填進value里面,從而發(fā)生錯誤.例如:
代碼如下:
關(guān)于“如何讓IE下支持Html5的placeholder屬性的插件”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。