ฉันกำลังสร้างส่วนขยายของ Chrome ซึ่งจะคัดลอกข้อความที่เลือก/ไฮไลต์ลงในพื้นที่ข้อความ นี่คือสิ่งที่ฉันใช้จนถึงตอนนี้:
chrome.tabs.executeScript( {
code: "window.getSelection().toString();",
}, function(selection) {
document.getElementById("output").value = selection[0];
});
แต่ตอนนี้ฉันเปลี่ยนจาก popup.html เป็นหน้าต่างที่ฉันสร้างขึ้นแบบนี้
พื้นหลัง js:
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.windows.create({
url: chrome.runtime.getURL("window.html"),
type: "panel", height: 590, width:850, focused: false
}, function(win) {
});
});
และฉันไม่สามารถรับข้อความที่เลือกลงในหน้าต่างนี้ได้อีกต่อไป ฉันยังคัดลอก URL ปัจจุบันของแท็บที่ใช้งานอยู่ด้วย:
chrome.tabs.getSelected(windowId, function(tab) {
document.getElementById('url').innerHTML = tab.url;
var windowId = tab.id
});
และฉันสามารถทำให้สิ่งนี้ใช้ได้กับหน้าต่างใหม่โดยใช้:
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
document.getElementById('url').innerHTML = tabs[0].url;
});
ดังนั้นคำถามของฉันคือ: ฉันจะนำข้อความที่เลือก/ไฮไลต์ลงในพื้นที่ข้อความภายในหน้าต่างที่สร้างขึ้นใหม่ของฉันได้อย่างไร มีอะไรที่คล้ายกับ
chrome.tabs.query()
เพียงเพื่อเน้นข้อความใช่ไหม