Ben, kullanıcı pop-up butonuna bastığında linkedin profil sayfasından veri ayıklamak zorunda olduğum bir uzantı geliştiriyorum. Ben popup.js sayfasından contentcript'e mesaj iletiyorum ve yanıt olarak popup.html dosyasında görüntüleyebilmem için contentcript'e göre linkedin profil sayfasından veri elde ediyorum. Ama ben popup.html'yi incelediğimde hata alıyorum. hatadır:chrome extension to treni içeriğe mesaj gönder Pop up to contact
Başvuru içinPort: Could not establish connection. Receiving end does not exist. lastError:29
Error in event handler for 'undefined': Cannot read property 'farewell' of undefined
TypeError: Cannot read property 'farewell' of undefined
at chrome-extension://kdfgoafjicddfffdbfofdmckejemfije/popup.js:6:25
at <error: illegal access>
at Event.dispatchToListener (event_bindings:356:21)
at Event.dispatch_ (event_bindings:342:27)
at Event.dispatch (event_bindings:362:17)
at Object.chromeHidden.Port.dispatchOnDisconnect (miscellaneous_bindings:258:27)
, benim apaçık dosyasıdır:
{
"name": "SoftwareGrid",
"version": "0.5",
"icons": { "16": "icons/16.png","48": "icons/48.png", "128": "icons/128.png" },
"description": "Shows user cresidentials on Linkedin",
"permissions": [
"cookies",
"tabs",
"http://www.linkedin.com/*"
],
"browser_action": {
"default_title": "Show Profile",
"default_icon": { "16": "icons/16.png","48": "icons/48.png", "128": "icons/128.png" },
"default_popup": "popup.html"
},
"background": {
"scripts": ["jquery-1.7.2.min.js","background.js"]
},
"content_scripts": [{
"matches": ["http://www.linkedin.com/*"],
"all_frames": true,
"js": ["jquery-1.7.2.min.js", "script.js"],
"run_at": "document_end"
}],
"web_accessible_resources": [
"icons/i1.png"
],
"manifest_version": 2
}
Benim popup.js dosyası:
function sendClicks() {
console.log("popup.js > sendClicks()");
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, {greeting: "hello"}, function(response) {
console.log(response.farewell);
});
});
console.log("avra' inviato?");
}
$(function() {
console.log("popup.js > OMD Extension ready");
$('#sendclicks').click(function(){
sendClicks();
});
});
Benim contentscript dosyası
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
console.log(sender.tab ?
"from a content script:" + sender.tab.url :
"from the extension");
if (request.greeting == "hello")
sendResponse({farewell: "goodbye"});
});
Plz help!
. Belki hata ayıklamada hata yaptınız ve tabınızı değiştirdiniz mi? Eğer chrome.tabs.query kullanıyorsanız ({active: true, currentWindow: true}, ...) hata ayıklama yaparken bu sekmenin açık ve aktif olması gerekir, aksi takdirde "script.js" üzerinde dinleyici çağrılmaz. –
Yardımlarınız için teşekkürler, ancak içerik scriptimde bir hata olduğu için aptalım: – saadsaf
İçerik komut dosyanızdaki hata neydi? Doğru dosyayı yanıt olarak koyabilirsiniz? – makenova