當前位置:編程學習大全網 - 源碼下載 - 用js寫滑塊驗證,當向右滑動滑塊,會直接退出當前頁面?

用js寫滑塊驗證,當向右滑動滑塊,會直接退出當前頁面?

這個問題可能是由於部分安卓手機瀏覽器的滑動手勢與滑塊驗證的滑動事件沖突導致的。為了解決這個問題,妳可以在滑塊驗證的滑動事件處理中阻止瀏覽器的默認行為,這樣就可以禁止瀏覽器的滑動手勢。以下是壹個簡單的示例:

HTML 代碼:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>滑塊驗證示例</title>

<style>

.slider-wrapper {

position: relative;

width: 300px;

height: 50px;

background-color: #f0f0f0;

border: 1px solid #ccc;

}

.slider {

position: absolute;

top: 0;

left: 0;

width: 50px;

height: 50px;

background-color: #4285F4;

cursor: pointer;

}

</style>

</head>

<body>

<div>

<div id="slider"></div>

</div>

<script src="script.js"></script>

</body>

</html>

JavaScript 代碼(script.js):

document.addEventListener('DOMContentLoaded', function () {

var slider = document.getElementById('slider');

var sliderWrapper = slider.parentElement;

var startX, currentX;

slider.addEventListener('touchstart', function (event) {

event.preventDefault(); // 阻止瀏覽器默認行為

startX = event.touches[0].clientX;

});

slider.addEventListener('touchmove', function (event) {

event.preventDefault(); // 阻止瀏覽器默認行為

currentX = event.touches[0].clientX;

var deltaX = currentX - startX;

if (deltaX >= 0 && deltaX <= (sliderWrapper.clientWidth - slider.clientWidth)) {

slider.style.left = deltaX + 'px';

}

});

slider.addEventListener('touchend', function (event) {

// 在這裏添加驗證邏輯

});

});

這個示例中,我們使用了 event.preventDefault() 方法來阻止瀏覽器的默認行為。這樣,在滑動滑塊時,瀏覽器的滑動手勢就不會被觸發了。請註意,這個示例僅適用於觸摸屏設備,妳還需要添加鼠標相關的事件監聽器以支持非觸摸屏設備。

  • 上一篇:上海消保委點名直播帶貨虛假宣傳,消費者遇此情況該如何維護權益?
  • 下一篇:c和指針源代碼
  • copyright 2024編程學習大全網