如何将选定元素从devTools页面发送到chrome侧边栏页面

时间:2014-08-04 22:06:07

标签: javascript google-chrome google-chrome-devtools

我正在使用chrome devTools扩展程序。基本上我有一个侧栏窗格添加到元素面板。 的 devtools.js

chrome.devtools.panels.elements.createSidebarPane("ChromeTrast", function(sidebar) {
  sidebar.setPage('devTools/chromeTrastDevTools.html');
}

chrometrastDevTools.html

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
</head>
<body>
  <p id="devTool-report"></p>
  <script src="../resources/jquery.js"></script>
  <script src="../resources/mustache.js"></script>
  <script src="../element/chromeTrastElement.js"></script>
  <script src="../element/RGB.js"></script>
  <script src="chromeTrastSidebar.js"></script>
</body>
</html>

在devtools.js中,我需要获取所选元素($ 0)并将其发送到chrometrastSidebar.js。

基本上,我希望从devtools.js传递数据&gt; chrometrastSidebar.js

chrometrastSidebar.js是侧边栏html页面中的源文件。

我尝试使用chrome.devtools.inspectedWindow.eval()但它没有用。

我做了一些研究,但都是从contentcript到bacground页面的消息。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

You would preferably use to get and receive as below accordingly.

chrome.extension.sendMessage({greeting: "hello"}, function(response) {
  console.log(response.farewell);
});


chrome.extension.onMessage.addListener(
 function(request, sender, sendResponse) {
 if (request.greeting == "hello") sendResponse({farewell: JSON.stringify(sender)});
});