การติดตามการแจ้งของ @ DavidPostill ฉันดูโครงสร้างหน้าอีกครั้ง ดูเหมือนว่าโฆษณาแบบข้อความจะถูกย้ายออกไปด้านนอกdiv.spon_links
เมื่อเปิดใช้งาน Adblock Edge ซึ่งมีกฎการกรองspon_links
แน่นอน ไม่ว่าจะเป็นพฤติกรรมที่ไม่เหมาะสมของ Adblock Edge หรือการต่อต้านจากหน้าเริ่มต้นที่ฉันไม่รู้
มีวิธีที่ง่ายกว่าการเพิ่มสคริปต์ Greasemonkey ที่กำหนดเอง - เพียงแค่สลับ Adblock Edge สำหรับ uBlock ก็สามารถแก้ไขปัญหาได้เช่นกัน
ในการตรวจสอบเพิ่มเติมโฆษณาจะหายไปเมื่อเปิดใช้ uBlock เมื่อ Adblock Edge ถูกปิดการใช้งานในเวลาเดียวกัน ("ปิดการใช้งานทุกที่") แม้ว่าฉันจะปิดการใช้งานเฉพาะสำหรับหน้าเริ่มต้น ("ปิดการใช้งานบน startpage.com") เว็บไซต์จะย้ายโฆษณานอกspon_links
คอนเทนเนอร์ คำอธิบายของฉันคือหน้าเริ่มต้นสามารถเข้าถึงการตั้งค่า Add-on ของฉันและตรวจสอบว่า Adblock เปิดใช้งานโดยทั่วไปหรือไม่ เป็นเรื่องที่น่ารังเกียจใช่ไหม!
ด้วยวิธีการใช้ Greasemonkey ของดาวิดและremoveChild
ฉันคิดวิธีแก้ปัญหาต่อไปนี้ซึ่งยังคงใช้ได้เมื่อติดตั้ง Adblock Edge ดูเหมือนว่าเราจะต้องรอจนกว่าหน้าเว็บจะโหลดและเล่นไปพร้อมกับการหลีกเลี่ยงโฆษณาบล็อกจนกว่าคุณจะสามารถค้นหาและลบองค์ประกอบที่ละเมิด: ในที่สุด
// ==UserScript==
// @name startpage/ixquick remove ads
// @namespace startpage.com
// @description Removes ads from startpage/ixquick before they are displayed.
// @include https://startpage.com/*
// @include https://*.startpage.com/*
// @include https://ixquick.com/*
// @include https://*.ixquick.com/*
// @run-at document-end
// @grant none
// @version 2015-09-29
// ==/UserScript==
var fun = function() {
var results = document.getElementById('bottom-result-container');
if (results) {
var ols = results.getElementsByTagName('ol');
for (i = 0; i < ols.length; i++) {
var ol = ols[i];
var ps = ol.getElementsByTagName('p');
for (j = 0; j < ps.length; j++) {
var p = ps[j];
if (p.className == 'head2') {
var spans = p.getElementsByTagName('span');
for (k = 0; k < spans.length; k++) {
if (spans[k].innerHTML.contains("Ads related to")) {
ol.innerHTML = '';
}
}
}
}
}
}
};
setTimeout(fun, 1);
(ขออภัย JavaScript ของฉันค่อนข้างสนิมอาจจะง่ายขึ้นเมื่อใช้ jQuery)