Greasy Fork镜像 支持简体中文。

禁止网页双击放大

可以通过油猴菜单控制当前页面是否启用禁止双击放大功能,默认启用该功能。

  1. // ==UserScript==
  2. // @name 禁止网页双击放大
  3. // @author ChatGPT
  4. // @version 1.1
  5. // @description 可以通过油猴菜单控制当前页面是否启用禁止双击放大功能,默认启用该功能。
  6. // @match *://*/*
  7. // @grant GM_registerMenuCommand
  8. // @grant GM_setValue
  9. // @grant GM_getValue
  10. // @run-at document-end
  11. // @namespace https://gf.qytechs.cn/users/452911
  12. // ==/UserScript==
  13.  
  14. (function() {
  15. 'use strict';
  16.  
  17. // 获取当前网站URL,并根据其生成一个唯一的存储键
  18. var storageKey = window.location.hostname;
  19.  
  20. // 根据存储键获取已保存的设置(如果存在)
  21. var isEnabled = GM_getValue(storageKey, true);
  22.  
  23. // 禁止双击放大的函数
  24. function disableDoubleClickZoom() {
  25. let lastTouchEnd = 0;
  26. let body = document.body;
  27.  
  28. // 监听touchend事件,阻止事件默认行为
  29. body.addEventListener("touchend", function(event) {
  30. let now = (new Date()).getTime();
  31. if (now - lastTouchEnd <= 300) {
  32. event.preventDefault();
  33. }
  34. lastTouchEnd = now;
  35. }, false);
  36.  
  37. // 禁止双击缩放
  38. body.addEventListener("gesturestart", function(event) {
  39. event.preventDefault();
  40. });
  41. }
  42.  
  43. // 启用或禁用双击放大功能
  44. function toggleDoubleClickZoom(isEnabled) {
  45. if (isEnabled) {
  46. disableDoubleClickZoom(); // 启用禁止双击放大
  47. } else {
  48. // 如果需要禁用,移除之前的事件监听
  49. let body = document.body;
  50. body.removeEventListener("touchend", function() {}, false);
  51. body.removeEventListener("gesturestart", function() {}, false);
  52. }
  53. }
  54.  
  55. // 根据保存的设置来启用或禁用功能
  56. toggleDoubleClickZoom(isEnabled);
  57.  
  58. // 创建油猴菜单项,在菜单中添加“启用”和“禁用”选项
  59. GM_registerMenuCommand(isEnabled ? '点击允许网页双击放大' : '点击禁止网页双击放大', function() {
  60. isEnabled = !isEnabled;
  61. GM_setValue(storageKey, isEnabled);
  62. toggleDoubleClickZoom(isEnabled);
  63. });
  64. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址