IE9以下 placeholder兼容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IE9以下 placeholder兼容相关的知识,希望对你有一定的参考价值。

//input placeholder兼容
!(function ($, doc, win) {
$.fn.placeholder = function () {
var i = doc.createElement(‘input‘),
placeholdersupport = ‘placeholder‘ in i;
if (!placeholdersupport) {
var inputs = $(this);
inputs.each(function () {
var input = $(this),
text = input.attr(‘placeholder‘),
pdl = 0,
height = input.outerHeight(),
width = input.outerWidth(),
placeholder = $(‘<span class="phTips_tadllj">‘ + text + ‘</span>‘);
try {
pdl = input.css(‘padding-left‘).match(/\d*/i)[0] * 1;
} catch (e) {
pdl = 5;
}
placeholder.css({ ‘margin-left‘: -(width - pdl), ‘height‘: height, ‘line-height‘: height + "px", ‘position‘: ‘absolute‘, ‘color‘: "#999", ‘font-size‘: "14px", "z-index": "100" });
placeholder.click(function () {
//placeholder.css({display:‘none‘});
input.focus();
});
if ($.trim(input.val()).length > 0) {
placeholder.css({ display: ‘none‘ });
} else {
placeholder.css({ display: ‘inline‘ });
}
placeholder.insertAfter(input);
input.on("focus", function (e) {
placeholder.css({ display: ‘none‘ });
}).on("blur", function (e) {
var _this = $(this);
if ($.trim(_this.val()).length > 0) {
placeholder.css({ display: ‘none‘ });
}
else {
placeholder.css({ display: ‘inline‘ });
}
});
// .keyup(function(e){
// if($(this).val() != ""){
// placeholder.css({display:‘none‘});
// }else{
// placeholder.css({display:‘inline‘});
// }
// })
});
}
return this;
};
var isIe = false;
if (navigator.userAgent.indexOf("MSIE") > 0) {
if (!$.support.leadingWhitespace || navigator.userAgent.indexOf("MSIE 9.0") > 0) {//IE9以下不让登陆
isIe = true;
}
}
if (isIe) {
$(‘input[placeholder]‘).placeholder();
}
})(jQuery, document, window);

以上是关于IE9以下 placeholder兼容的主要内容,如果未能解决你的问题,请参考以下文章

兼容placeholder

解决输入框placeholder属性不兼容IE9及以下浏览器问题

input placeholder 兼容问题

placehoder不兼容ie9以下和opero12以下

ie9 placeholder兼容

关于input 属性placeholder 在IE9下兼容