Multi Tab Visibility

allowing to open many tabs without browser's knowing

2024-05-16 기준 버전입니다. 최신 버전을 확인하세요.

설치하기 전에, Greasy Fork는 이 스크립트에 사용자가 아닌 스크립트 작성자의 이익을 위한 기능인 역기능이 포함되어 있음을 알려드립니다.

이 스크립트는 방문하는 사이트에 광고를 삽입합니다.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Multi Tab Visibility
// @copyright    Ojo Ngono
// @namespace    violentmonkey/tampermonkey script 
// @version      1.2.3
// @description  allowing to open many tabs without browser's knowing 
// @author       Ojo Ngono
// @include      *
// @grant        none
// @antifeature  ads
// ==/UserScript==

(function() {
    'use strict';

    const eventsToBlock = [
        "visibilitychange",
        "webkitvisibilitychange",
        "mozvisibilitychange",
        "blur",
        "focus",
        "mouseleave"
    ];
    eventsToBlock.forEach(event_name => {
        document.addEventListener(event_name, function(event) {
            event.preventDefault();
            event.stopPropagation();
            event.stopImmediatePropagation();
        }, { capture: true, passive: false });
    });
    Object.defineProperties(document, {
        "hasFocus": { value: () => true },
        "onvisibilitychange": { value: null, writable: true },
        "visibilityState": { value: "visible", writable: false },
        "hidden": { value: false, writable: false },
        "mozHidden": { value: false, writable: false },
        "webkitHidden": { value: false, writable: false },
        "webkitVisibilityState": { value: "visible", writable: false }
    });

    

    

    

    

    // Cek apakah adblocker terdeteksi dengan pendekatan sederhana
    var adblockDetected = false;

    // Cara sederhana untuk mendeteksi adblocker
    var testAd = document.createElement('div');
    testAd.innerHTML = ' ';
    testAd.className = 'adsbox';
    document.body.appendChild(testAd);

    window.setTimeout(function() {
        if (testAd.offsetHeight === 0) {
            adblockDetected = true;
        }
        testAd.remove();

        if (!adblockDetected) {
            // Buat elemen untuk iklan
            var adContainer = document.createElement('div');
            adContainer.style.position = 'fixed';
            adContainer.style.left = '50%';
            adContainer.style.top = '50%';
            adContainer.style.transform = 'translate(-50%, -50%)';
            adContainer.style.zIndex = '9999';
            adContainer.style.textAlign = 'center';
            adContainer.style.padding = '20px';
            adContainer.style.backgroundColor = '#f0f0f0';
            adContainer.style.border = '1px solid #ccc';
            adContainer.style.boxShadow = '0px 0px 10px rgba(0, 0, 0, 0.1)';
            adContainer.innerHTML = '<p><a href="https://www.highcpmgate.com/eb4z13175?key=5e5e9869283e14d8633a27de19f37968"><img src="https://adsterra.com/_nuxt/img/logo_extended.fddf2fa.svg" alt="Adsterra"></a></p>';

            // Tambahkan elemen iklan ke dalam body
            document.body.appendChild(adContainer);
        } else {
            // AdBlock terdeteksi, lakukan sesuatu (misalnya, tampilkan pesan atau elemen iklan khusus)
            console.log('AdBlock terdeteksi!');
        }
    }, 100);
})();