2012-09-12 24 views
5

Krom uzantıları geliştirmekte sorun yaşıyorum. SonraKrom uzantısında içerik komut dosyası yükleme

window.addEventListener("load",function(){ 
    var html = document.getElementsByTagName('html')[0]; 
    var title = document.getElementsByTagName('title')[0].innerHTML; 
    if(html){ 
     chrome.extension.sendRequest({akce: 'content', title: title},function(response){}); 
     alert(title); 
    } 
},false); 

Bir BG sayfası vardır:

ben içerik komut dosyası var

chrome.extension.onRequest.addListener(function(request,sender,sendResponse){ 
    if(request.akce == 'content'){ 
     console.log(request.title); 
    } 
}); 

Sorun adres satırına yazmaya başladığınızda, içeriklerim komut sitesinde yüklenmiş olmasıdır otomatik tamamlama listesinde ilk olan. Aşağıdaki ekran görüntüsünde görebileceğiniz gibi, içerik komut dosyası adres çubuğuna girmeden önce yüklenir ve henüz bulunmadığım siteye yüklenir.

Neler olduğu hakkında hiçbir fikrim yok. Lütfen bana yardım edin. Sana Chrome'da "Anlık tarama" olarak adlandırılan seçeneği etkin sanırım

screenshot

cevap

4

Çözüm, arka plan sayfasından komut dosyası enjekte edilir.

Örnek: bg sayfa

chrome.tabs.executeScript(tabId,{ 
    code: "chrome.extension.sendRequest({action: 'content_refer', url: document.referrer},function(response){});" 
}); 

chrome.extension.onRequest.addListener(function(request,sender,sendResponse){ 
    if(request.action == 'content_refer'){ 
     wipstats.allPages[sender.tab.id].ref = request.url; 
    } 
}); 
0

, ben bir süre önce aynı sorunu vardı ve tam bu sebepten dolayı bunu devre dışı bırakılır ve artık hiç kullanmamış.

+0

gelen yönlendirenini olsun ama bu müşterilerine benim uzantısı dağıtmak istiyorum, çünkü ben istemci makinede "Anında tarama" devre dışı bırakamaz düşünüyorum, benim için kullanışlı değildir :( – tomash

+0

evet, haklısınız, ama bu krom seçeneğini beğenmiyorum ve bunun Google'ın çözmesi gereken bir soru olduğuna inanıyorum çünkü geliştiriciler burada hiçbir şey yapamazlar. anında göz atma sırasında uzantıları yükleme ve kullanıcı girdikten sonra onları yükle Enter, ama yine de bu Google'ın – haynar

+0

ve bir şey daha çözmesi gerektiğine inanıyorum, tam olarak bilmiyorum, ama belki de krom belirli DOM olayları vardır possibl Bu durumda yakalamak ve bu gibi durumlarla başa çıkmak için iyi bir çözüm olacaktır. – haynar

İlgili konular