2013-02-09 40 views
5

Trong popup.js tôi đang sử dụng mã sau để hiển thị tất cả văn bản trong một id div nhất định của tab hiện tại - và hiển thị trong cảnh báo. Tôi tự hỏi làm cách nào để lưu văn bản div thành biến trong popup.js?Giá trị trả lại từ chrome.tabs.executeScript

chrome.tabs.executeScript(null,code:"alert(document.getElementById(\"DIVid\").innerText.split(' '))"}); 

Các công trình trên tốt, nhưng khi tôi cố gắng này:

var getText = chrome.tabs.executeScript(null,code:"document.getElementById(\"DIVid\").innerText.split(' ')"}); 

hoặc

var getText = chrome.tabs.executeScript(null,code:"document.getElementById(\"DIVid\").innerText.split(' ')"},function(response){return response}); 

Không có gì được lưu trữ. Tôi rõ ràng đang đi về điều này một cách sai lầm. Tôi đang làm gì sai?

Trả lời

7

Sử dụng đoạn mã sau,

var getText = Array(); 
chrome.tabs.executeScript(tabs[tab].id, { 
    "code": "document.getElementById(\"_Your_ID_Here_\").innerText.split(' ')" 
}, function (result) { 
    for (i = 0; i < result[0].length; i++) 
    getText [i] = result[0][i]; 
    console.log(getText); 
}); 

Bạn phải cập nhật biến bên trong gọi lại, vì bản chất của async chrome.api

Các vấn đề liên quan