Created
February 2, 2012 15:09
-
-
Save madmanlear/1723896 to your computer and use it in GitHub Desktop.
Hint.js with fixes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Includes a fix for using the back button | |
* Title default to placeholder for HTML5 support | |
* @author Remy Sharp | |
* @url http://remysharp.com/2007/01/25/jquery-tutorial-text-box-hints/ | |
*/ | |
(function ($) { | |
$.fn.hint = function (blurClass) { | |
if (!blurClass) blurClass = 'blur'; | |
return this.each(function () { | |
var $input = $(this), | |
title = $input.attr('placeholder'), | |
$form = $(this.form), | |
$win = $(window); | |
function remove() { | |
if ($input.val() === title) { | |
$input.val('').removeClass(blurClass); | |
} | |
} | |
// only apply logic if the element has the attribute | |
if (title) { | |
// on blur, set value to title attr if text is blank | |
$input.blur(function () { | |
if (this.value === '' || this.value == title) { | |
$input.val(title).addClass(blurClass); | |
} | |
}).focus(remove).blur(); // now change all inputs to title | |
// clear the pre-defined text when form is submitted | |
$form.submit(remove); | |
$win.unload(remove); // handles Firefox's autocomplete | |
} | |
}); | |
}; | |
})(jQuery); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment