当有多个选择器时处理$(this)

Jim*_*Jim 4 javascript jquery

现在当像多边形选择器上应用的动画效果一样

$('.foo,.bar').animate({width: '250'}, 'slow',function(){
    console.log($(this));
});
Run Code Online (Sandbox Code Playgroud)

控制台日志返回两次.foo.bar

那么我怎样才能基于此做出其他事件.foo.

这样的东西$(this)+'.foo'<<这是错的

我需要根据(这个)的位置做其他事件 .foo

Tho*_*s W 6

使用单独的选择器$('.foo')或向下过滤现有的选择器filter('.foo').在早期,将动画/事件绑定到正确的元素集上是最好的.

或者在动画回调中检查是否$(this).is('.foo')$(this).hasClass('foo').如果你的动画/事件已被绑定,那么这种方法最好,但你需要弄清楚它们被触发了哪种DOM元素.

一般来说,绑定的东西与你想要的一样(第一种方法)是最好的,但这取决于你究竟想要做什么.

看到: