2010-12-23 3 views
2

비행기 탑승 중입니다. 스택 오버플로 페이지를 포함하여 모든 페이지에 광고를 맨 위에 배너가 표시되도록하고 있습니다. 여기 서버 측 생성 배너 광고 제거 - Greasemonkey

내가 파이어 폭스에서 내 UserScript에 대해 가지고있는 코드이지만, 그것은 작동하지 않습니다 :

// ==UserScript== 
// @name   SW Ad remover 
// @namespace  seangates.com/sw_ad_remover 
// @include  * 
// @require  https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js 
// ==/UserScript== 

$(document).ready(function(){ 
$('script[src$="swa.py"]').remove(); 
$('div[id^="__swa"]').hide(); 
$('body').css('padding',0); 

console.log('working'); 
}); 

어떤 생각을 왜 작동하지 않을 것에 관해서는? 심지어 ready.() 블록의 시작 부분에 넣어도 console.log를 얻을 수 없습니다.

+2

추신 : [Adblock Plus] (https://addons.mozilla.org/ko-KR/firefox/addon/1865/)는 킥 - 엉덩이 애드온이며 잘 작동해야합니다. –

+0

나는 광고를 이미 차단할 수는 있지만 항공사의 로고 등으로 방문하는 페이지 상단에 대규모 배너가 계속 표시됩니다. 며칠 동안 다시 테스트 할 기회는 없지만 언제 알지. 도와 주셔서 감사합니다! – seangates

답변

0

물론 Greasemonkey가 @require 규칙을 구현 했으므로 여기에는 jQuery를 사용하지 않는 옵션이 있습니다.

var s = document.querySelectorAll('script[src$="swa.py"]'), 
    d = document.querySelectorAll('div[id^="__swa"]'); 

for(var i = 0; i < s.length; i++){ 
    s[i].parentNode.removeChild(s[i]); 
} 

for(i = 0; i < d.length; i++){ 
    d[i].style.display = 'none'; 
} 

document.body.style.padding = '0px'; 

document.querySelectorAll 위 IE8 및에서만 사용할 수 있습니다,하지만 괜찮아 여기. 이 스크립트는 테스트하지 않았지만 제대로 작동합니다.

+0

도움을 주셔서 감사합니다. 나는 다시 그 비행기를 타기 전까지 이틀 정도 기다려야 만합니다. 내가 비행 할 때 어떻게 작동하는지 알려 드리겠습니다. – seangates