选择除带有 jQ​​uery -2 的按钮外的所有按钮

Pie*_*erc 4 html javascript jquery parent-child jquery-selectors

我有这个代码:

\n\n
<div class="nav navbar-nav" id="filters">\n    <button class="btn btn-default navbar-btn active" data-filter="*">Tous</button>\n    <button class="btn btn-default navbar-btn" data-filter=".image">Photos</button>\n    <button class="btn btn-default navbar-btn" data-filter=".movie">Vid\xc3\xa9os</button>\n    <button class="btn btn-default navbar-btn" data-filter=".text">Text Seulement</button>\n    <button class="btn btn-default navbar-btn" id="sort" data-sort-value="likes">Likes</button>\n</div>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想使用 jQuery 选择器从 div #filters 中选择所有按钮,除了唯一带有 #sort 的按钮。

\n\n

目前我试图通过以下代码来实现这一目标。

\n\n
$(\'#filters\').not(\'#sort\').each( function( i, buttonGroup ) {\n     var $buttonGroup = $( buttonGroup );\n     $buttonGroup.on( \'click\', \'button:not("#sort")\', function() {\n         $buttonGroup.find(\'.active\').removeClass(\'active\');\n         $( this ).addClass(\'active\');\n     });\n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

你能帮助我吗 ?

\n\n

对此的任何帮助将不胜感激。

\n

Moh*_*ani 5

.not()在选择器中使用并$(\'#filters > button\')通过使用子选择器查找按钮 (\xe2\x80\x9cparent > child\xe2\x80\x9d)

\n\n

您的问题和代码有点令人困惑,但它表示您希望active在单击按钮并从其他按钮中删除时将其应用到按钮上。

\n\n

以下点击事件将在all the buttons except #sort.

\n\n
$(\'#filters > button\').not($(\'#sort\')).click(function(){\n  $(\'#filters > button\').removeClass(\'active\');\n  $(this).addClass(\'active\');\n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

\r\n
\r\n
$(\'#filters > button\').not($(\'#sort\')).click(function(){\n  $(\'#filters > button\').removeClass(\'active\');\n  $(this).addClass(\'active\');\n});\n
Run Code Online (Sandbox Code Playgroud)\r\n
$(\'#filters > button\').not($(\'#sort\')).click(function(){\r\n  $(\'#filters > button\').removeClass(\'active\');\r\n  $(this).addClass(\'active\');\r\n});
Run Code Online (Sandbox Code Playgroud)\r\n
.active{\r\n background-color: red;  \r\n}
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n