$('textarea').focus(function() {
var img = $(this).css('background-image');
$(this).css('background-image', 'none');
});
$('textarea').blur(function() {
$(this).css('background-image', img);
});
..似乎不起作用。我觉得有些不对劲,但我无法弄清楚是什么。
非常感谢你的帮助!
答案 0 :(得分:7)
如果你定义
var img
在.focus()
事件处理程序内部,该变量将无法在其中使用
.blur()
因此要么定义var img
全局,要么使用jQuerys .data()
方法。
写:
$.data(this, 'img', $(this).css('background-image'));
读:
$.data(this, 'img');
示例:
$('textarea').focus(function() {
var $this = $(this);
$.data(this, 'img', $this.css('background-image'));
$this.css('background-image', 'none');
});
$('textarea').blur(function() {
$(this).css('background-image', $.data(this, 'img') || '');
});
答案 1 :(得分:0)
尝试在css中定义图像的url-address。
var img = 'images/mybg.png';
$('textarea').blur(function() {
$(this).css('background-image', 'url('+img+')');
});