jQuery animate 完整参数,仅用作匿名函数而不用作函数指针
jQuery animate complete parameter, only works as anonymous function not as function pointer
我用以下jQuery动画删除了一个dom元素:
var $id = $(this._id); // id of a dom element
$id.animate({
width: "10vw",
fontSize: "0.33vw",
}, 300, "swing", function() {
$id.remove();
});
这工作正常。但我想让它更短并尝试:
var $id = $(this._id); // id of a dom element
$id.animate({
width: "10vw",
fontSize: "0.33vw",
}, 300, "swing", $id.remove);
这不。为什么不呢?我想,那是一样的...
$id.remove
作为函数指针(我称之为函数引用)将失去其上下文,即this
值,这意味着remove()
不知道要处理哪个集合。
尝试传递$.proxy($.fn.remove, $id)
.这将调用 jQuery 的 remove()
方法,使用 $id
的上下文。 $.proxy()
是Function.prototype.bind()
的跨浏览器实现。
调用也包装在匿名函数中,以防止您遇到的问题。
相关文章:
- jQuery animate()函数没有't设置动画
- JS异常:animate不是一个函数
- 有没有什么方法可以停止Jquery中的animate(也可以停止完整的回调函数)
- jQuery的slideUp,slideDown,animate函数的任何替代品
- 在jQuery中循环嵌套animate函数
- 如何调用Edge Animate's从外部Javascript中播放函数
- 如何使用jQuery中的animate函数从左向右滑动
- JQuery Animate 函数在制作动画之前跳到屏幕顶部
- 从函数中引用对象时遇到问题 - Adobe Animate canvas
- JQuery animate() 函数延迟且运行缓慢
- Jquery animate 函数中的步骤
- for 循环中的 jquery Animate 函数
- Jquery ui animate 函数不起作用
- 使用 jQuery animate 函数扩展内容区域
- jQuery animate 完整参数,仅用作匿名函数而不用作函数指针
- 切换 jQuery .animate 函数
- ASP .NET C# 中的 jQuery Animate Zoom 函数
- animate函数使用屏幕的高度
- animate方法函数执行意外延迟
- 如何从html外部调用jQuery函数:animate ?