2016-04-10 71 views
2

Yeni, boş sekmelere arka plan resimleri yükleyen bir Google Chrome uzantısı yayınladım. Eklenti burada Chrome Web Store'da bulunur.Google Chrome'da boş ve yeni sekme açılışlarını tespit edin

Yeni ve boş sekmeleri algılamak için, uzantının manifest.json numaralı telefonunda "sekme" izinlerini sormam gerekiyor. Ancak bu, uzantıya tarayıcının geçmişini okuma izni verir. Tüm kullanıcılar bunu istemeyecek ve aslında buna ihtiyacımız yok. Bu izin gereksinimi olmadan boş sekmeleri algılamanın bir yolu var mı? Şu anda onay şuna benzer:

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab){ 
    if (changeInfo.status == "loading" && tab.url == 'chrome://newtab/') 
    { /* load background into tab */ } 
}); 

cevap

3

size beyannamesine bu eklemek gerekir yeni sekme sayfasını özelleştirmek istiyorsanız:

"chrome_url_overrides": { 
    "newtab": "newtab.html" 
} 

Sonra anda yeni sekme sayfaları içine enjekte edilir komut dosyası yerleştirin newtab.html dosyasında bir <script> etiketi olarak. Bu izin mesajına neden olmaz.

+0

Tam olarak bunu yapıyorum, ancak sekme yerinde bir URL ile açılmış olsa bile kod henüz çağrılmaktadır. Ancak bu kodu sadece boş sekmeler için çalıştırmam gerekiyor. –

+0

Yukarıdakileri yaparsanız, yeni sekme sayfasına bir komut dosyası eklemeniz gerekmeyecektir, buna yenitab.html dosyasında bir başvuru ekleyebilirsiniz. Bu, yalnızca normal yeni sekme sayfası göründüğünde görüneceği anlamına gelir. – metarmask

+0

Bu işe yarayabilir. Bunu daha sonra kontrol edeceğim. Bir URL bulunduğunda newtab.html geçici olarak yüklenip yüklenmediğinden emin değilim ... şimdiden teşekkürler! –