• Download Gist
jQuery HTML5 placeholder fix.js
JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
$('[placeholder]').focus(function() {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
if (this.originalType) {
this.type = this.originalType;
delete this.originalType;
}
input.val('');
input.removeClass('placeholder');
}
}).blur(function() {
var input = $(this);
if (input.val() == '' || input.val() == input.attr('placeholder')) {
if (this.type == 'password') {
this.originalType = this.type;
this.type = 'text';
}
input.addClass('placeholder');
input.val(input.attr('placeholder'));
}
}).blur().parents('form').submit(function() {
$(this).find('[placeholder]').each(function() {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
}
})
});

Added check for type=password field to fix issue in IE. Based on Richard Connamacher's comment at http://www.hagenburger.net/BLOG/HTML5-Input-Placeholder-Fix-With-jQuery.html

actually, this doesn't work in IE < 9

I made a quick work around to get this to work in IE7, and IE8 ( in coffee script )
https://gist.github.com/1664711

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.