jquery - 如何创建切换按钮?

标签 jquery html css

我想使用 css 在 html 中创建一个切换按钮。我想要它,以便当您单击它时,它会保持插入状态,而不是当您再次单击它时它会弹出。

如果仅使用 css 无法做到这一点。有没有办法使用 jQuery 来做到这一点?

最佳答案

良好的语义方式是使用一个复选框,然后根据是否选中来以不同的方式设置它的样式。但是没有好的方法来解决它。您必须添加额外的 span、额外的 div,并且为了获得非常漂亮的外观,添加一些 javascript。

所以最好的解决方案是使用一个小的 jQuery 函数和两个背景图像来设置按钮的两种不同状态的样式。边框给出向上/向下效果的示例:

$(document).ready(function() {
  $('a#button').click(function() {
    $(this).toggleClass("down");
  });
});
a {
  background: #ccc;
  cursor: pointer;
  border-top: solid 2px #eaeaea;
  border-left: solid 2px #eaeaea;
  border-bottom: solid 2px #777;
  border-right: solid 2px #777;
  padding: 5px 5px;
}

a.down {
  background: #bbb;
  border-top: solid 2px #777;
  border-left: solid 2px #777;
  border-bottom: solid 2px #eaeaea;
  border-right: solid 2px #eaeaea;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a id="button" title="button">Press Me</a>

显然,您可以添加代表按钮弹起和按钮按下的背景图像,并使背景颜色透明。

关于jquery - 如何创建切换按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/309081/

相关文章:

javascript - jQuery - 将 1 附加到 jQuery 对象中的所有 ID

html - 如何通过调整浏览器窗口的大小来制作导航栏比例尺

html - CSS - 将列表项堆叠在彼此下方

CSS动画淡入淡出下滑

html - 元素的放置

javascript - 当我选择单选按钮时,Jquery 函数会过滤值

javascript - DataTables 行很好但未初始化?

javascript - onClick Action 以显示更多信息 html、css、javascript

html - 裁剪图片而不是随页面调整大小

jquery - 如何仅删除正确的文本输入?