Greasy Fork

Greasy Fork is available in English.

【日本 IPA IT 认证考试真题网站,解除复制和右键限制】【日本のIPA IT認定試験の実際の問題サイト、コピーと右クリックの制限を解除します。】

日本 IPA IT 认证考试真题网站,解除复制和右键限制

// ==UserScript==
// @name         【日本 IPA IT 认证考试真题网站,解除复制和右键限制】【日本のIPA IT認定試験の実際の問題サイト、コピーと右クリックの制限を解除します。】
// @version      0.1.1
// @author       trunk
// @match        *://*/*
// @grant        none
// @description  日本 IPA IT 认证考试真题网站,解除复制和右键限制
// @license MIT
// @namespace http://greasyfork.icu/users/904276
// ==/UserScript==

function enableCopyAndRightClick() {
  
  // 还原默认的右键菜单行为
  document.oncontextmenu = null;
  document.body.oncontextmenu = null;
  window.oncontextmenu = null;
  
  // 移除右键和选择禁用
  ['contextmenu', 'selectstart', 'copy', 'cut', 'paste', 'mousedown'].forEach(evt => {
    document.addEventListener(evt, e => {
      e.stopPropagation();
      // 不阻止默认行为,确保右键和复制可用
    }, true);
  });
  
}

function restoreDefaultUserSelect(selector) {
  const element = document.querySelector(selector);
  // 确保传入的是一个 DOM 元素
  if (element && element.style) {
    // 恢复为默认的 user-select 样式
    element.style.setProperty('user-select', 'auto');
  }
}

(function() {
  'use strict';
  
  // 只匹配 www.xxx-siken.com 的域名
  const pattern = /^www\.[a-zA-Z0-9_-]+-siken\.com$/;
  const hostname = window.location.hostname;
  
  // 如果域名匹配则启用复制和右键
  if (pattern.test(hostname)) {
    console.log('开启复制和鼠标右键');
    enableCopyAndRightClick();
    restoreDefaultUserSelect('html');
    restoreDefaultUserSelect('body');
  }
})();