Я создаю собственное расширение Chrome, и одна из его функций - выделить и получить селектор DOM от элемента, когда пользователь наводит на него курсор мыши.
Мне сказали, что реализовать эту функцию довольно просто, используя Chrome Debugger API. Я скачал пару примеров кода, но я всегда получаю ту же ошибку
Error in event handler for runtime.onMessage: Error: Invocation of form
debugger.attach(integer, string) doesn't match definition
debugger.attach(object target, string requiredVersion, optional
function callback)
at chrome-extension://hgjiapiojommgpfcaijbjlckjajegmoa/js/background.js:16:23
Вот мое содержимое файла background.js
chrome.browserAction.onClicked.addListener(function() {
chrome.tabs.query({
active: true,
currentWindow: true
}, function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, "toggle");
});
});
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if(request == "captureSelector") {
console.log(sender);
console.log("'Capture DOM selector' event detected");
chrome.debugger.attach(sender.tab.id, "1.0");
}
}
);
Согласно документации, функция ожидает объект Debuggee, который может быть tabId, поэтому я не понимаю, почему он не работает
Есть идеи, пожалуйста?