Skip to content

lanaasad/adBlock-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 

Repository files navigation

Detected AdBlock JS

Lisensi Ukuran File

Sebuah modul JavaScript sederhana, modern, dan tanpa dependensi untuk mendeteksi apakah pengguna mengaktifkan AdBlock di browser mereka. Modul ini bekerja secara asinkronus dan mengembalikan sebuah Promise.

✨ Fitur

  • Tanpa Dependensi: Murni menggunakan JavaScript modern.
  • Ringan: Ukuran file sangat kecil.
  • Berbasis Promise: Mudah diintegrasikan dengan sintaks async/await atau .then().
  • Metode Deteksi Ganda: Menggabungkan metode pemblokiran skrip iklan dan penyembunyian elemen "umpan" untuk akurasi yang lebih baik.

πŸš€ Quick Start (Mulai Cepat)

Cara termudah untuk menggunakan modul ini adalah melalui CDN seperti jsDelivr.

1. Impor Modul ke Proyek Anda

Anda bisa menggunakan tag <script type="module"> di file HTML Anda.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Contoh Deteksi AdBlock</title>
</head>
<body>
    <h1>Cek AdBlock</h1>
    <p id="status">Mengecek...</p>

    <script type="module">
      // Impor fungsi dari CDN jsDelivr
      import checkAdBlock from 'https://cdn.jsdelivr.net/gh/purujawa06-bot/detected-adblock@main/detected-adblock.js';

      // Gunakan fungsi dengan async/await di dalam fungsi async
      async function jalankanPengecekan() {
        try {
          const isAdBlockActive = await checkAdBlock();

          const statusElement = document.getElementById('status');
          if (isAdBlockActive) {
            console.log('AdBlock terdeteksi!');
            statusElement.textContent = 'AdBlock terdeteksi! Mohon nonaktifkan untuk mendukung kami.';
            statusElement.style.color = 'red';
            // Lakukan sesuatu, misalnya tampilkan popup
          } else {
            console.log('AdBlock tidak aktif.');
            statusElement.textContent = 'Terima kasih telah tidak menggunakan AdBlock!';
            statusElement.style.color = 'green';
          }
        } catch (error) {
          console.error('Terjadi kesalahan saat memeriksa AdBlock:', error);
        }
      }

      // Panggil fungsi saat halaman selesai dimuat
      window.addEventListener('load', jalankanPengecekan);
    </script>
</body>
</html>

2. Penggunaan dengan .then()

Jika Anda lebih suka menggunakan sintaks Promise klasik, Anda bisa melakukannya seperti ini:

import checkAdBlock from 'https://cdn.jsdelivr.net/gh/purujawa06-bot/detected-adblock@main/detected-adblock.js';

checkAdBlock()
  .then(isAdBlockActive => {
    if (isAdBlockActive) {
      console.log('AdBlock aktif.');
      alert('Kami mendeteksi AdBlock. Mohon pertimbangkan untuk menonaktifkannya.');
    } else {
      console.log('AdBlock tidak aktif.');
    }
  });

βš™οΈ Cara Kerja

Modul ini mendeteksi AdBlock dengan dua cara utama:

  1. Memuat Skrip Umpan: Mencoba memuat skrip iklan standar dari Google (adsbygoogle.js). Jika permintaan ini gagal atau diblokir, itu adalah indikasi kuat adanya AdBlock.
  2. Elemen Umpan (Bait Element): Membuat sebuah elemen div di halaman dengan nama kelas yang umum ditargetkan oleh AdBlock (misalnya, adsbox). Setelah beberapa saat, skrip akan memeriksa apakah elemen tersebut disembunyikan (display: none, visibility: hidden) atau memiliki tinggi 0. Jika ya, berarti AdBlock telah menyembunyikannya.

Jika salah satu dari kondisi di atas terpenuhi, fungsi akan mengembalikan true. Jika tidak, fungsi akan mengembalikan false.

πŸ“œ Lisensi

Proyek ini dilisensikan di bawah Lisensi MIT.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published