需要帮助了解jQuery语法的操作顺序

时间:2013-05-22 04:48:35

标签: jquery css

到目前为止,我一直在尝试解密其他人的代码和方法来部署有效而优雅的jQuery,但我不断给出选项,以后会让我感到困惑,因为我应该注意什么。这通常会转化为一些我确信可以简化的调用。

我想做的是

1 - 检查id是否具有特定声明名称(id名称),

2 - 删除controlbar类,如果它不以M4V或

结尾

3 - 如果#postvideo为空,或者articlePost隐藏.controlbar

的父div中不存在普通'

4 - 但如果它确实在M4V中结束,则将其分离并将其附加到元素属性#fold-above ...简单对吧?我知道,可能不是。

我正在尝试使用的示例代码:

$('#postvideo').not('[src$=".m4v"]').empty().each(function() { 
    $(".controlbar").remove();  //elements whose src doesn't end with `.m4v`
});

$('.articlePost').empty('$("#postvideo").function() {
    $(".controlbar").remove();
});

$("#postvideo").detach().appendTo("#fold-above");

相同id,多次通话。任何人都可以帮助解释如何以及为什么最好将所有这些都放入简洁的代码中?

2 个答案:

答案 0 :(得分:1)

$(".controlbar").remove();会删除带有类控件栏的所有项目 - 每次都是相同的。不需要使用每个,如果你想删除类,请尝试使用

$('#postvideo .controlbar').not('[src$=".m4v"]').each(function() {
  $(this).empty().removeClass("controlbar");
});
阿伦表示......或者甚至更短......

答案 1 :(得分:1)

您的第一部分可以写成

$('#postvideo').not('[src$=".m4v"]').empty().removeClass('controlbar');