我使用以下代码在文本字段中显示文字,当您关注它时会消失:
$(document).ready(function(){
$('.onfocus_rem_txt').each(function(){
$(this).val($(this).attr('defaultVal'));
$(this).css({color:'grey'});
});
$('.onfocus_rem_txt').focus(function(){
if ($(this).val() == $(this).attr('defaultVal')){
$(this).val('');
$(this).css({color:'black'});
}
});
$('.onfocus_rem_txt').blur(function(){
if ($(this).val() == ''){
$(this).val($(this).attr('defaultVal'));
$(this).css({color:'grey'});
}
});
});
如何使用.delegate在我打开的每个new.php页面中使用它?
答案 0 :(得分:0)
您可以委托.focus
和.blur
这样的事件,不需要使用.each
进行迭代,只需在创建{{input
时预先应用值和文字颜色1}}元素
示例:http://jsfiddle.net/pxfunc/fLnjX/
var $container = $('#container');
$container.delegate('.onfocus_rem_txt', {
'focus': function() {
var $that = $(this);
if ($that.val() === $that.attr('defaultVal')) {
$that.val('').css('color', 'black');
}
},
'blur': function() {
var $that = $(this);
if ($that.val() === '') {
$that.val($that.attr('defaultVal')).css('color', 'grey');
}
}
});
答案 1 :(得分:0)
您可以使用直播以便在多个地方使用此功能
$(document).ready(function(){
$('.onfocus_rem_txt').each(function(){
$(this).val($(this).attr('defaultVal'));
$(this).css({color:'grey'});
}).live({
'focus': function(){
if ($(this).val() == $(this).attr('defaultVal')){
$(this).val('');
$(this).css({color:'black'});
},
'blur': function(){
if ($(this).val() == ''){
$(this).val($(this).attr('defaultVal'));
$(this).css({color:'grey'});
}
});
});