5

İçerik komut dosyalarının hangi sayfalara enjekte edildiğini kontrol etmekle ilgili bir sorun yaşıyorum. chrome extension developer guide, belirli sayfaları enjeksiyondan hariç tutmak için manifest.json adresindeki bir "exclude_matches" yönergesini kullanabileceğimi belirtir."exclude_matches" hiçbir şey yapmıyor mu?

Ancak bu herhangi bir etkiye sahip görünmemektedir. İçerik komutum hâlâ göz ardı olarak belirttiğim sayfalarda yürütülür.

Ben steps to reproduce in a Gist koyduk. Kod ayrıca available on Github'dur.

Ne yaptığım hakkında bir fikrim var mı?

manifest.json

{ 
    "name": "Testing Extension", 
    "version": "1.0", 
    "description": "Test the chrome extensions exclude_matches.", 
    "content_scripts": [{ 
    "matches": ["http://*/*", "https://*/*"], 
    "exclude_matches": ["http://news.ycombinator.com/"], 
    "js": ["content.js"] 
    }] 
} 

content.js

console.log("hello from the content script"); 

cevap

5

Bu Bug #100106 olduğunu. exclude_matches düzgün çalışmıyor.

Sorunu çözmek için exclude_matches yerine exclude_globs kullanın.

Ayrıca, exclude_matches kural yalnızca http://news.ycombinator.com/ maç yok. http://news.ycombinator.com/*:
bütün siteyi eşleştirmek için bir yıldız işareti ile desen yeterli .

Ayrıca bakınız: Match patterns.

+0

Hemen şimdi denedim ve fark yaratmıyor gibi görünüyor. Hala içerik komut dosyasından günlüğü görüyorum. Aslında, "exclude_matches" yönergesini "[" http: // */* "]' olarak ayarlayabilirim ve içerik betiği hala her http sayfasında çalışır. –

+0

@duckyfuzz Görüyorum. Tuhaf. 'Exclude_matches' yerine **' exclude_globs' ** kullanılması sorunu çözer. Ben [buradan] İstedikleri gibi –

+0

Bu hala http://stackoverflow.com/questions/20784654/excluding-domains-from-content-scripts-in-manifest-json-doesnt-work- (CSS dosyaları için çalışmıyor için-css-fil). – herohuyongtao

İlgili konular