MailBait Auto Check

Vinkt automatisch alle checkboxes aan op mailbait.run (client-side only) ✅

当前为 2025-11-26 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         MailBait Auto Check
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Vinkt automatisch alle checkboxes aan op mailbait.run (client-side only) ✅
// @match        https://mailbait.info/run
// @grant        none
// @run-at       document-idle
// ==/UserScript==

(function(){
  'use strict';

  const setChecked = (el)=>{
    try{
      if(el && el.type === 'checkbox' && !el.checked){
        el.checked = true;
        // fire change event so the site notices
        el.dispatchEvent(new Event('change',{bubbles:true}));
      }
    }catch(e){/* ignore */}
  };

  const checkAll = ()=> {
    document.querySelectorAll('input[type="checkbox"]').forEach(setChecked);
  };

  // initial pass
  checkAll();

  // observe for dynamically added checkboxes (some UIs render later)
  const mo = new MutationObserver((mutations)=>{
    for(const m of mutations){
      m.addedNodes.forEach(node=>{
        if(node.nodeType !== 1) return;
        if(node.matches && node.matches('input[type="checkbox"]')) setChecked(node);
        node.querySelectorAll && node.querySelectorAll('input[type="checkbox"]').forEach(setChecked);
      });
    }
  });
  mo.observe(document.body, {childList:true, subtree:true});

  // handy toggle hotkey: Ctrl+Shift+A (toggles observer and runs a pass)
  let enabled = true;
  window.addEventListener('keydown', e=>{
    if(e.ctrlKey && e.shiftKey && e.key.toLowerCase() === 'a'){
      enabled = !enabled;
      if(enabled){
        checkAll();
        mo.observe(document.body, {childList:true, subtree:true});
        alert('Auto-check ON ✅');
      }else{
        mo.disconnect();
        alert('Auto-check OFF ⛔');
      }
    }
  });

})();