Popup Blocker โดย AdGuard เป็นสคริปต์ผู้ใช้ที่บล็อกหน้าต่างป๊อปอัปที่ไม่ต้องการทั้งหมดในเบราว์เซอร์ที่แตกต่างกัน
ทำงานได้ใน Chrome, Firefox, Edge, Safari, IE10+ ฯลฯ โดยทั่วไปในเบราว์เซอร์ที่รองรับตัวจัดการสคริปต์ผู้ใช้ ข้อยกเว้นคือเบราว์เซอร์รุ่นเก่าบางรุ่นที่ไม่รองรับ API ที่เราใช้ สคริปต์อาจไม่สามารถทำงานได้อย่างสมบูรณ์ที่นั่น
ตัวบล็อกป๊อปอัปไม่ได้ใช้ กฎการกรอง ในการตรวจหาป๊อปอัป แต่จะเพิ่มเลเยอร์เพิ่มเติมที่ด้านบนของ API ดั้งเดิมของเบราว์เซอร์ที่ใช้ในการสร้างป๊อปอัปแทน ด้วยวิธีนี้ คุณสามารถเรียกใช้ API เหล่านี้ได้เมื่อเกิดจากการป้อนข้อมูลด้วยตนเองเท่านั้น และไม่สามารถเรียกใช้โดยสคริปต์ป๊อปอัป/ป๊อปอันเดอร์ ที่อนุญาตให้บล็อกป๊อปอัปแม้บนเว็บไซต์ที่พยายามหลีกเลี่ยงตัวบล็อกโฆษณาทั่วไปโดยใช้ WebRTC หรือเปลี่ยนแปลงเซิร์ฟเวอร์โฆษณา
เข้าใจง่ายแต่สำคัญ: หากการคลิกจะทำให้ป๊อปอัปแสดง ไม่เพียงแต่ป๊อปอัปเท่านั้นที่ถูกบล็อก แต่การคลิกครั้งแรกจะได้รับการประมวลผลเหมือนที่ไม่มีป๊อปอัป
สคริปต์อื่นๆ บนเพจตรวจไม่พบว่ามีการใช้งาน Popup Blocker นอกเหนือจากการพยายามเปิดป๊อปอัปจริงๆ วิธีนี้จะป้องกันการหลบเลี่ยง Popup Blocker ที่เป็นไปได้
เวอร์ชันปัจจุบัน : https://userscripts.adtidy.org/release/popup-blocker/2.5/popupblocker.user.js
รุ่นเบต้าปัจจุบัน: https://userscripts.adtidy.org/beta/popup-blocker/2.5/popupblocker.user.js
Popup Blocker ได้รับการพัฒนาโดยทีมเดียวกับที่พัฒนา AdGuard และ AdGuard สำหรับ Windows สามารถทำหน้าที่เป็นผู้จัดการสคริปต์ผู้ใช้ได้ หากคุณเป็นผู้ใช้ AdGuard ให้ไปที่การตั้งค่า - ส่วนขยาย - เพิ่มส่วนขยาย และป้อน URL ไฟล์ Popup Blocker .js ที่ต้องการที่นั่น ด้วยวิธีนี้คุณสามารถใช้มันกับเบราว์เซอร์ใดก็ได้อย่างแท้จริง
ในทางกลับกัน Popup Blocker เป็นโปรเจ็กต์อิสระ คุณสามารถใช้ร่วมกับตัวจัดการสคริปต์ผู้ใช้อื่นๆ เช่น Greasemonkey, Tampermonkey หรือ Violentmonkey ตรวจสอบให้แน่ใจว่าได้ติดตั้งหนึ่งในนั้นในเบราว์เซอร์ของคุณเพื่อให้สามารถใช้ Popup Blocker ได้ (เพียงป้อน URL สคริปต์ลงในแถบที่อยู่ ผู้จัดการจะตรวจพบโดยอัตโนมัติ)
คุณสามารถจัดการรายการโดเมนที่อนุญาตและโดเมนที่ถูกปิดเสียงได้ในหน้าตัวเลือกเฉพาะ:
หากต้องการรายงานข้อบกพร่อง ไปที่หน้านี้และสร้างปัญหาใหม่
คุณสามารถช่วยเราแปล Popup Blocker เป็นภาษาอื่นได้! โครงการของเราใน Crowdin เปิดให้สาธารณชนมีส่วนร่วม
บิลด์การพัฒนาเปิดใช้งานการบันทึกและแทนที่ API ของเบราว์เซอร์จำนวนมากขึ้นอย่างมากเพื่อตรวจสอบพฤติกรรมของสคริปต์ป๊อปอัป/ป๊อปอันเดอร์ ไม่เหมาะกับการใช้งานปกติ
การทดสอบหน่วยสำหรับ dev build อยู่ที่นี่
เมื่อต้องการสร้างโครงการ ให้ทำตามขั้นตอนเหล่านี้:
ติดตั้งการขึ้นต่อกันในเครื่องโดยการรันคำสั่งต่อไปนี้ในเทอร์มินัล:
yarn install
หากต้องการสร้าง ให้รันคำสั่งต่อไปนี้ในเทอร์มินัล:
$ NODE_ENV=<channel> ts-node tasks/builder --target=<target>
แทนที่ channel
ด้วยช่องที่ต้องการ ซึ่งอาจเป็น dev
, beta
หรือ release
นอกจากนี้ให้แทนที่ target
ด้วยเป้าหมายบิลด์ที่ต้องการซึ่งอาจเป็นได้
userscript
– สร้าง userscript สำหรับช่องที่ระบุoptions
– สร้างหน้าตัวเลือกซึ่งเป็นเพจแบบสแตนด์อโลนที่ให้ความสะดวกแก่ผู้ใช้ในการจัดการเว็บไซต์ที่อนุญาตและปิดเสียงtests
– การทดสอบการสร้าง;bundle
– สร้างและมัดทั้งหมดข้างต้นสำหรับช่องที่ระบุหรือคุณสามารถรันคำสั่งต่อไปนี้ในรูปแบบขั้นต่ำ:
yarn userscript-<channel>
yarn options-page
yarn tests
yarn bundle:dev
yarn bundle:beta
yarn bundle:release
หากคุณกำลังสร้างเพื่อการพัฒนา โปรดทราบว่าเอาต์พุตจะไม่ถูกย่อขนาดลงและจะมีบันทึกในคอนโซลของเบราว์เซอร์
รุ่นเบต้าและรุ่นที่วางจำหน่ายจะถูกย่อให้เล็กลง และรหัสการบันทึกทั้งหมดจะถูกถอดออก
สร้างโดยใช้หน้าตัวเลือก ไปที่โฟลเดอร์ build ผ่านคำสั่ง cd
และเรียกใช้เซิร์ฟเวอร์ภายในที่คุณเลือก
yarn options-page
แก้ไข isOptionsPage
ที่ option-init.ts
เพื่ออนุญาตที่อยู่และพอร์ตเฉพาะ หลังจากนั้น ตรวจสอบให้แน่ใจว่าสคริปต์ผู้ใช้ (เช่น ใน AG) มีที่อยู่และพอร์ตนี้ด้วย
หากต้องการดูหน้าตัวเลือก ตรวจสอบให้แน่ใจว่า AG กรองหน้าแก้ไขข้อบกพร่องของคุณ
วิธีทดสอบสคริปต์ง่ายๆ คือไปที่ http://code.ptcong.com/better-js-popunder-script/
เพียงคลิกที่ใดก็ได้บนหน้านั้นเพื่อรับป๊อปอันเดอร์ หรือใช้ลิงก์เฉพาะเพื่อรับป๊อปอัป/ป๊อปอันเดอร์/แท็บอัพ/อื่นๆ
ลักษณะการทำงานที่คาดหวัง: หน้าต่างใหม่ถูกบล็อกพร้อมการแจ้งเตือนที่มุมขวาบน
หน้าตัวเลือกถูกปรับใช้ผ่านหน้า GitHub พร้อมด้วยการดำเนินการด้วยตนเอง Deploy popup blocker beta
และ Deploy popup blocker release
รุ่น beta
และรุ่น release
ตามลำดับ