php - 一次更改多个元素的类

标签 php jquery css

我站在一片森林前。你能帮我找到那棵树吗?

目前我正在用 PHP 生成一个列表

echo '<div>';
echo '  <ul>';
foreach ( $myArray as $key => $value):
    echo '<li>'. $value . '</li>';
endforeach;
echo '  </ul>';
echo '</div>';

该数组包含有限数量的元素,这些元素可能会有所不同。

我想做的是突出显示当前元素并正常显示所有其他元素。 因此,在显示页面时,第一项应显示为突出显示。 当点击第二项时,

  • 第一项不应突出(没有任何样式)。
  • 第二个元素应该突出显示,直到另一个元素被点击。
  • 所有其他元素应显示为正常样式。

我希望只使用 CSS 就能做到这一点。

要命名,当单击列表项时,我计划显示/隐藏其他 div 元素,我计划在其中使用 jQuery。

最佳答案

$('li').on('click', function() {
  $('li.highlight').removClass('highlight');  // first un-highlight all lis
  $(this).addClass('highlight');  // then highlight only clicked li
});

要在页面加载时将第一项设置为 highlight,您也可以在 PHP/jQuery 中完成。

如果你想在 jQuery 中做,那么试试:

$(document).ready(function() {
    $('div > ul > li:first').addClass('highlight'); // set first item 
                                                // highlight at page load
    $('li').on('click', function() {
      $('li.highlight').removClass('highlight');  // first un-highlight all lis
      $(this).addClass('highlight');  // then highlight only clicked li
    });
});

关于php - 一次更改多个元素的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14942344/

相关文章:

jquery - 使用可编辑 ("destroy"关闭和打开 xeditable );

javascript - 为什么浏览器先加载 HTML 然后加载 Bootstrap?

javascript - JS 切换菜单充当返回顶部按钮?

css - 垂直对齐 : middle

css - 为什么 min-content 不能与自动填充或自动调整一起使用?

php - 如何使用 PHP 和 MySQL 在复选框中使用 boolean 值

php - 简单的 PHP 和 jquery 联系表

带有单选按钮的 PHP 邮件程序表单使用 AJAX 发送

php - JSON 架构 : how to allow empty string for property with numeric type?

WordPress 中的 CSS : Customizer vs Child Theme