将选择框转换为切换按钮 jQuery数字选择器

  • 源码大小:5.64KB
  • 所需积分:1积分
  • 源码编号:19JP-3076
  • 浏览次数:925次
  • 最后更新:2023年05月03日
  • 所属栏目:表单
本站默认解压密码:19jp.com 或 19jp_com

简介

numberselector是一个jQuery插件,它将常规的选择框转换为包含内联切换按钮的水平选择器栏,以获得更好的用户体验。

当用户与选取器栏交互时,它会自动使用所选值更新相应的选择框。

参见:

  • 将复选框/单选输入转换为切换按钮-复选框2按钮

如何使用它:

1.将jQuery库和numberselector.js脚本添加到网页中。

  1. <script src="/path/to/cdn/jquery.slim.min.js"></script>
  2. <script src="/path/to/numberselector.js"></script>

2.调用函数数字选择器()在目标上选择select元素,插件将完成其余操作。

  1. <select id="programming_languages" name="programming_languages">
  2. <option value="Python">Python</option>
  3. <option value="JavaScript">JavaScript</option>
  4. <option value="Java">Java</option>
  5. <option value="C">C</option>
  6. <option value="C++">C++</option>
  7. <option value="C#">C#</option>
  8. <option value="Ruby">Ruby</option>
  9. <option value="Go">Go</option>
  10. <option value="Swift" selected>Swift</option>
  11. <option value="Kotlin">Kotlin</option>
  12. <option value="PHP">PHP</option>
  13. <option value="R">R</option>
  14. <option value="TypeScript">TypeScript</option>
  15. <option value="Rust">Rust</option>
  16. </select>
  1. $(function() {
  2. $("#programming_languages").numberselector();
  3. });

3.将CSS样式应用于切换按钮。

  1. .numberselector {
  2. display: block;
  3. margin-top: 10px;
  4. display: table;
  5. width: 100%;
  6. }
  7. .numberselector .numbersrow {
  8. display: table-row;
  9. }
  10.  
  11. .numberselector span {
  12. border: 1px solid #d8d8d8;
  13. color: white;
  14. font-size: 20px;
  15. padding: 1px 16px;
  16. margin-left: -1px;
  17. background: white;
  18. color: #3c3c3c;
  19. line-height: 1.8;
  20. cursor: pointer;
  21. display: table-cell;
  22. text-align: center;
  23. }
  24.  
  25. .numberselector span.selected {
  26. color: #fff;
  27. z-index: 1;
  28. position: relative;
  29. }
  30.  
  31. .numberselector span.selected:before {
  32. position: absolute;
  33. z-index: -1;
  34. background: #2b53a7;
  35. left: -2px;
  36. top: -2px;
  37. right: -2px;
  38. bottom: -2px;
  39. content: ' ';
  40. }
  41.  
  42. .numberselector span.selected:after {
  43. position: absolute;
  44. left: calc(50% - 7px);
  45. bottom: -10px;
  46. content: ' ';
  47. width: 0;
  48. height: 0;
  49. border-left: 7px solid transparent;
  50. border-right: 7px solid transparent;
  51. border-bottom: 7px solid #2b53a7;
  52. }
  53.  
  54. .numberselector span.oldselection {
  55. background: #717171;
  56. color: #fff;
  57. }

预览截图