我有一个放大图像focus()
和缩小图像的应用程序blur()
。我已经阅读了原始图像尺寸并添加了 15px 以创建放大效果,效果很好。问题在于缩小效果,我试图将我读过的原始图像大小传递给.blur()
但没有运气。谁能帮我解决这个问题?
问问题
599 次
2 回答
1
首先,您没有在函数中调用该$.data()
方法。此外,我已经更改了您的函数,使其具有与您的函数类似的实现,以使缩小工作:orgW
orgH
.blur()
.blur()
.focus()
$('button:has(img)').blur(function() {
if (timer !== null) clearTimeout(timer);
var $image = $(this).find('img');
$image.each(function() {
$(this).animate({
'width': $.data(this, 'orgW') + 'px',
'height': $.data(this, 'orgH') + 'px',
}, 500);
});
});
于 2011-01-25T10:38:33.987 回答
1
您还可以在动画功能中使用'+=15'
和。'-=15'
无需存储宽度和高度。
$('button:has(img)').focus(function() {
$(this).find('img').animate({
width: '+=15',
height: '+=15'
}, 500);
});
$('button:has(img)').blur(function() {
$(this).find('img').animate({
'width': '-=15',
'height': '-=15'
}, 0);
});
编辑:现在它应该可以工作了。
于 2011-01-25T10:43:12.670 回答