欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

新百胜娱乐_17665445111

程序员文章站 2022-05-10 17:33:37
...

www.xbs1567.com这篇文章主要为大家详细介绍了JavaScript实现滑块验证案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了JavaScript实现滑块验证的具体代码,供大家参考,具体内容如下

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. <style>
  9. * {
  10. margin: 0;
  11. padding: 0;
  12. }
  13. .box {
  14. position: relative;
  15. width: 500px;
  16. height: 40px;
  17. border: 1px solid #000;
  18. }
  19. p {
  20. position: relative;
  21. z-index: 5;
  22. font: 20px/40px '楷体';
  23. text-align: center;
  24. color: rgba(95, 90, 90, 0.479);
  25. }
  26. .btn {
  27. width: 40px;
  28. height: 40px;
  29. border: 1px solid #ccc;
  30. box-sizing: border-box;
  31. background-color: #fff;
  32. cursor: pointer;
  33. z-index: 6;
  34. position: absolute;
  35. top: 0;
  36. left: 0;
  37. background-position: center;
  38. background-repeat: no-repeat;
  39. background-size: 50% auto;
  40. background-image: url(./图1.png);
  41. }
  42. .bg {
  43. height: 100%;
  44. position: absolute;
  45. top: 0;
  46. left: 0;
  47. background-color: #7ac23c;
  48. }
  49. </style>
  50. </head>
  51. <body>
  52. <div class="box">
  53. <div class="btn"></div>
  54. <p>拖动滑块验证</p>
  55. <div class="bg"></div>
  56. </div>
  57. </body>
  58. <script>
  59. //获取事件
  60. var box = document.querySelector('.box')
  61. var p = document.querySelector('p')
  62. var btn = document.querySelector('.btn')
  63. var bg = document.querySelector('.bg')
  64. // 选中文字就会触发这个事件
  65. this.box.onselectstart = function () {
  66. return false // 阻止默认行为
  67. }
  68. //默认没有验证成功
  69. var flag = false;
  70. //按下事件
  71. btn.onmousedown = function () {
  72. var e1 = window.event;
  73. var x1 = e1.offsetX;
  74. //移动事件
  75. btn.onmousemove = function () {
  76. var e2 = window.event;
  77. var x2 = e2.clientX
  78. //计算left的值
  79. var left = x2 - x1
  80. if (left > 0) {
  81. //设置滑动块的距离
  82. this.style.left = left + 'px';
  83. //设置背景的宽度
  84. bg.style.width = left + 'px';
  85. if (left > box.offsetWidth - this.offsetWidth) {
  86. //验证成功
  87. flag = true;
  88. p.innerText = '通过验证'
  89. p.style.color = '#000'
  90. //事件清除
  91. this.onmousedown = null;
  92. this.onmousemove = null;
  93. }
  94. }
  95. }
  96. //鼠标松开
  97. btn.onmouseup = function () {
  98. //事件清除
  99. this.onmousemove = null;
  100. //判断验证是否成功
  101. if (flag) {
  102. return
  103. }
  104. this.style.left = 0; //设置滑动块的距离
  105. bg.style.width = 0; //设置背景的宽度
  106. };
  107. }
  108. </script>
  109. </html>

新百胜娱乐_17665445111
以上就是本文的全部内容,希望对大家的学习有所帮助