当用户在输入/文本区域中输入文本时,我正在处理标签淡入淡出。到目前为止它运行良好,但我想不出一个好方法来检查输入/文本区域在加载时是否具有现有值,因此我可以自动隐藏标签。
输入/文本区域正在使用 .load() 加载,这就是我使用 $(document) 而不是直接定义选择器的原因。
这是一个示例,显示了我试图克服的问题。任何帮助将不胜感激。另外,如果您有任何建议,我可以如何将此功能包装到一个插件/功能中,这将更加有用。谢谢!
http://jsfiddle.net/skyros/FTXc3/
如果你不想去 jsfiddle 和伪代码
//JQUERY
$(document).on('click', 'label', function() {
$(this).next().focus();
});
$(document).on('focus', 'input,textarea', function() {
var label = (this.value === "") ? $(this).prev('label').show().fadeTo(100, 0.25) : $(this).prev('label').fadeTo(100, 0).hide();
});
$(document).on('blur', 'input,textarea', function() {
var label = (this.value === "") ? $(this).prev('label').show().fadeTo(100, 1) : $(this).prev('label').fadeTo(100, 0).hide();
});
$(document).on('keypress', 'input, textarea', function() {
var label = $(this).prev('label').hide();
});