連續觸碰左側兩次=下一章,連續觸碰左側三次=上一頁
当前为
// ==UserScript==
// @name 嗨皮漫畫 - 觸控左側點選下一章 for 手機
// @name:zh-TW 嗨皮漫畫 - 觸控左側點選下一章 for 手機
// @name:zh-CN 嗨皮漫畫 - 觸控左側點選下一章 for 手機
// @name:en Happy Comics - Touch Left Side to Navigate to Next Chapter for Mobile
// @namespace https://www.youtube.com/c/ScottDoha
// @version 0.5
// @description 連續觸碰左側兩次=下一章,連續觸碰左側三次=上一頁
// @description:zh-cn 连续触碰左侧两次=下一章,连续触碰左侧三次=上一页
// @description:en Double-tap the left side to navigate to the next chapter, triple-tap to go to the previous page.
// @author Scott
// @match *://m.happymh.com/reads/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
var isRunning = true; // 默認開啟
var toggleButton = document.createElement('button');
toggleButton.innerText = '自動中'; // 默認文字為“自動中”
toggleButton.style.position = 'fixed';
toggleButton.style.bottom = '20px';
toggleButton.style.right = '0px'; // 修改為右邊距0px
toggleButton.style.zIndex = '9999';
toggleButton.style.opacity = '0.5'; // 默認透明度為50%
toggleButton.style.transition = 'all 0.3s ease';
toggleButton.style.transform = 'translateX(0)'; // 默認不移動
toggleButton.onclick = function() {
isRunning = !isRunning;
if (isRunning) {
toggleButton.innerText = '自動中'; // 開啟時文字為"自動中"
toggleButton.style.transform = 'translateX(0)'; // 向右移動
} else {
toggleButton.innerText = '停止中'; // 停止時文字為"停止中"
toggleButton.style.transform = 'translateX(0)'; // 不移動,保持在右下角
}
};
document.body.appendChild(toggleButton);
var lastTouchTime = 0; // 上次觸摸時間
var touchCount = 0; // 連續觸摸次數
// 監聽觸摸事件
document.addEventListener('touchstart', function(event) {
var currentTime = new Date().getTime(); // 獲取當前時間
var timeDiff = currentTime - lastTouchTime; // 計算與上次觸摸的時間間隔
if (timeDiff < 500) { // 如果時間間隔小於500毫秒,則認為是連續觸摸
touchCount++;
if (touchCount === 2) { // 如果連續觸摸次數為2,則觸發點選下一章的操作
var nextChapterButton = document.querySelector('.MuiButton-containedPrimary');
if (nextChapterButton && isRunning) {
nextChapterButton.removeAttribute('aria-disabled'); // 移除停用屬性
nextChapterButton.click();
}
} else if (touchCount === 3) { // 如果連續觸摸次數為3,則觸發瀏覽器的後退操作
window.history.back();
}
} else { // 如果時間間隔大於等於500毫秒,則重設連續觸摸次數
touchCount = 1;
}
lastTouchTime = currentTime; // 更新上次觸摸時間
});
window.addEventListener('scroll', function() {
if (isRunning) {
var endMarker = document.querySelector('.jss19'); // 結束標記元素
if (endMarker) {
var markerRect = endMarker.getBoundingClientRect();
var viewportHeight = window.innerHeight || document.documentElement.clientHeight;
// 檢查是否拖曳到特定元素位置
if (markerRect.top <= viewportHeight) {
var nextChapterButton = document.querySelector('.MuiButton-containedPrimary');
if (nextChapterButton) {
nextChapterButton.removeAttribute('aria-disabled'); // 移除停用屬性
nextChapterButton.click();
}
}
}
}
});
})();