纯JS实现tab选项卡切换效果

秒速五厘米 2022-04-08 13:53 447阅读 0赞

今天学到的用js写选项卡,有高亮效果,废话不多说,直接上代码吧!!!

注意事项:css代码中有一个隐藏其他div的属性, display: none;这个一定要注意,要不然你写的都会显示出来
html代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. <link href="./css/demo.css" rel="stylesheet" type="text/css" />
  9. </head>
  10. <body>
  11. </body>
  12. <!-- 文学 -->
  13. <div class="xue">
  14. <div class="Middle_wen">
  15. <div class="Middle_wen_left">
  16. <a class="text-active">&nbsp&nbsp&nbsp&nbsp&nbsp文学&nbsp |</a>
  17. <a>&nbsp财经金融&nbsp |</a>
  18. <a>&nbsp哲学宗教&nbsp |</a>
  19. <a>&nbsp艺术&nbsp |</a>
  20. <a>&nbsp工艺技术&nbsp&nbsp&nbsp&nbsp&nbsp</a>
  21. </div>
  22. </div>
  23. <div class="Middle_hua1">
  24. <div class="Middle_hua">
  25. <div>
  26. <p>
  27. <a href="">1那列维奇160多幅画作将在俄博物馆展出</a>
  28. </p>
  29. <P>
  30. 1 那列维奇160多幅画作将在俄博物馆展出
  31. </P>
  32. </div>
  33. </div>
  34. <div class="Middle_hua">
  35. <div>
  36. <p>
  37. <a href="">2金融就是金融金融金融就是金融金融</a>
  38. </p>
  39. <P>
  40. 2金融就是金融金融金融就是金融金融
  41. </P>
  42. </div>
  43. </div>
  44. <div class="Middle_hua">
  45. <div>
  46. <p>
  47. <a href="">3哲学,宗教,道教,基督教,佛教</a>
  48. </p>
  49. <P>
  50. 3哲学,宗教,道教,基督教,佛教
  51. </P>
  52. </div>
  53. </div>
  54. <div class="Middle_hua">
  55. <div>
  56. <p>
  57. <a href="">4艺术,美术生,体育生,播音,音乐</a>
  58. </p>
  59. <P>
  60. 4艺术,美术生,体育生,播音,音乐
  61. </P>
  62. </div>
  63. </div>
  64. <div class="Middle_hua">
  65. <div>
  66. <p>
  67. <a href="">5,工艺技术,挖掘机哪家强,星球大战找飞祥</a>
  68. </p>
  69. <P>
  70. 5,工艺技术,挖掘机哪家强,星球大战找飞祥
  71. </P>
  72. </div>
  73. </div>
  74. </div>
  75. <script src="js/jquery-3.2.1.min.js"></script>
  76. <script>
  77. // 选项卡------马列维奇
  78. //当点击a标签的选项卡的时候,执行下面的函数
  79. $('.Middle_wen_left a').click(function() {
  80. // 获取点击标签的索引
  81. var $index = $(this).index();
  82. // 高亮效果,给本标签添加类,只显示本标签其他隐藏,本标签类删除(删除了就没有高亮效果了)
  83. $(this).addClass('text-active').siblings().removeClass('text-active');
  84. //本标签获取索引,进行展示,只显示本标签其他隐藏
  85. $('.Middle_hua').eq($index).show().siblings().hide();
  86. })
  87. </script>
  88. </html>

css代码

  1. /* 文学 */
  2. .xue {
  3. background: #5e5e5e;
  4. margin-top: 35px;
  5. float: left;
  6. width: 500px;
  7. height: 200px;
  8. text-align: center;
  9. }
  10. .xue>.Middle_wen {
  11. margin-top: 10px;
  12. overflow: hidden;
  13. margin-left: -50px;
  14. }
  15. .Middle_wen_left {
  16. margin-left: 100px;
  17. float: left;
  18. display: inline-block;
  19. height: 20px;
  20. line-height: 20px;
  21. font-size: 15px;
  22. background: #e6e6e6;
  23. border: 1px solid #e6e6e6;
  24. border-radius: 25px;
  25. }
  26. /* 高亮颜色 */
  27. .text-active {
  28. color: #f2ad00
  29. }
  30. /* 只显示第一个,其他隐藏 */
  31. .Middle_hua1 .Middle_hua:not(:first-child) {
  32. display: none;
  33. }
  34. /* 马列维奇 */
  35. .Middle_hua {
  36. cursor: pointer;
  37. }
  38. .Middle_hua div p {
  39. margin-left: 25px;
  40. overflow: hidden;
  41. text-overflow: ellipsis;
  42. white-space: nowrap;
  43. -webkit-line-clamp: 1;
  44. -webkit-box-orient: vertical;
  45. word-break: break-all;
  46. width: 86%;
  47. display: inline-block;
  48. font-size: 12px;
  49. }
  50. .Middle_hua div p a {
  51. overflow: hidden;
  52. text-overflow: ellipsis;
  53. white-space: nowrap;
  54. -webkit-line-clamp: 1;
  55. -webkit-box-orient: vertical;
  56. word-break: break-all;
  57. width: 75%;
  58. display: inline-block;
  59. font-size: 20px;
  60. font-weight: bold;
  61. margin-top: 10px;
  62. }

最后还有一个js文件的引入:

  1. jquery-3.2.1.min.js

效果图:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,447人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JS实现选项切换

    面是用JS简单地实现选项卡功能的实例。 > 注意点:(1)闭包后,要使用立即执行函数; > > (2)绑定事件注意参数; > > (3)思路:将当前div显示,其余隐藏,