Javascript jQuery-如果元素有类,则执行此操作

Javascript jQuery-如果元素有类,则执行此操作,javascript,jquery,Javascript,Jquery,我需要一个jQuery脚本,该脚本将查看是否有任何元素具有特定的类,并执行诸如更改位置之类的操作 这是方法,但我认为这行不通 $("a.contact").toggle(function() { $("#contact").animate({ right: '0' }, 2000); if ($("#about").hasClass("opened")) { $("#about").animate({ right:

我需要一个jQuery脚本,该脚本将查看是否有任何元素具有特定的类,并执行诸如更改位置之类的操作

这是方法,但我认为这行不通

$("a.contact").toggle(function() {
    $("#contact").animate({
        right: '0'
    }, 2000);

    if ($("#about").hasClass("opened")) {
        $("#about").animate({
            right: -700 + "px"
        }, 2000);
    }
}, function() {
    $("#contact").animate({
        right: -700 + "px"
    }, 2000);
});

首先,您的条件语句中缺少一些括号:

if ($("#about").hasClass("opened")) {
  $("#about").animate({right: "-700px"}, 2000);
}
但您也可以将其简化为:

$('#about.opened').animate(...);
如果
#about
没有打开
类,它将不会设置动画


如果问题出在动画本身,我们需要了解更多关于元素定位的信息(绝对?绝对在相对父元素内?父元素是否有布局?

您说过您想知道“any”元素是否有特定的类,但If语句中的选择器只针对id为“about”的元素那是故意的吗?基本上是想找出你的问题所在。你也试过上面的代码了吗?因为你认为它行不通,所以投票否决了这个问题?你先试试怎么样?!?如果它不起作用,具体告诉我们你期望看到什么,以及你实际看到了什么。@肯:他确实应该看到,但既然他只是一个卑微的傻瓜,也许朝着正确的方向轻轻推一下会更合适些?顺便说一句,@Florescu,如果你想知道某件事是否可行,但你无法解决它,那么在jsfiddle.net上模拟这个问题,并在你的问题中链接到它。@treeface:这就是推(而不是称他为卑鄙的傻瓜);如果他将问题更新为…你知道,实际上包括一个问题,那么我将删除我的否决票。坏问题(或缺少问题)=否决投票,这样其他人就不必在这样的非问题上浪费时间。