jquery焦点回调
有人能告诉我为什么这不起作用吗jquery焦点回调,jquery,Jquery,有人能告诉我为什么这不起作用吗 $("textarea.settings").focus(function () { var size = $(this).height(); console.log(size); if(size == 40) {$(this).animate({height: 120},"slow");} }, function () { $(this).anima
$("textarea.settings").focus(function () {
var size = $(this).height();
console.log(size);
if(size == 40) {$(this).animate({height: 120},"slow");}
}, function () {
$(this).animate({height: 40},"slow");
});
请告诉我原因?focus()
不接受2个参数。如果您的目的是打开/关闭焦点,请使用blur()
:
$("textarea.settings").focus(function () {
var size = $(this).height();
console.log(size);
if(size == 40) {$(this).animate({height: 120},"slow");}
}).blur(function () {
$(this).animate({height: 40},"slow");
});
您可以在([events list])
与设置布尔变量(
isFocus
)相比,您可以分别使用三元运算符和动画来调整大小。focus
不接受两次回调。它应该做什么?实际上是在做什么?当用户单击它时增大大小,当他们单击它时减小。@undefined我肯定我以前使用过它:|@Chud37-那么我肯定你弄错了,因为focus没有两个回调,你需要blur()。
$("textarea.settings").on('focus blur',function (e) {
var isFocus = e.type=='focus',
animH = isFocus? 120 : 40;
$(this).animate({height: animH}, 800);
});