首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在观看时更新chrome.devtools.panels?

如何在观看时更新chrome.devtools.panels?
EN

Stack Overflow用户
提问于 2013-09-28 15:44:56
回答 2查看 742关注 0票数 0

我想在自定义面板中刷新信息。

但onShown在观看面板时无法刷新。我怎么才能或者...必须在onShow中使用setInterval()吗?

manifest.json:

代码语言:javascript
复制
{
  "name": "sample",
  "version": "0.1",
  "manifest_version": 2,
  "devtools_page": "devtools.html"
}

devtools.html:

代码语言:javascript
复制
<html><body><script src="devtools.js"></script></body></html>

devtools.js:

代码语言:javascript
复制
var view_counts = 0;
chrome.devtools.panels.create(
  "sample", "sample.png", "sample.html",
  function(panel){
    panel.onShown.addListener(function(panel_window){
      panel_window.document.getElementById("show_count").innerHTML = view_counts;
      // and moer update.
    });
  }
);
chrome.devtools.network.onRequestFinished.addListener(
  function(entries) {
    if(entries.request.url == "http://example.com/"){
      view_counts++;
      // and more analytics
    }
  }
);

sample.html:

代码语言:javascript
复制
<html><body>count: <div id="show_count">-</div></body></html>
EN

回答 2

Stack Overflow用户

发布于 2014-05-28 22:40:04

当您刷新页面时,您的自定义面板不会自动刷新。此外,当自定义面板可见/单击时,会激发面板的onShown事件。因此,您的代码将无法显示刷新信息。

您必须将panel_window引用存储在全局变量中,以便您可以在onRequestFinished事件处理程序中访问该引用以执行所需的操作。我已经编辑了你的代码,请在下面检查:

请按如下方式更改您的devtools.js

代码语言:javascript
复制
var view_counts = 0;
var _windowObj;

chrome.devtools.panels.create(
  "sample", "sample.png", "sample.html",
  function(panel){
    panel.onShown.addListener(function tmp(panel_window){
      panel.onShown.removeListener(tmp);
      _windowObj = panel_window;
      _windowObj.document.getElementById("show_count").innerHTML = view_counts;
    });
  }
);

chrome.devtools.network.onRequestFinished.addListener(
  function(entries) {
    if(entries.request.url == "http://example.com/"){
      view_counts++;
    }
    _windowObj.document.getElementById("show_count").innerHTML = view_counts;
  }
);
票数 2
EN

Stack Overflow用户

发布于 2013-10-05 12:01:38

好的,我只是试一试。

当onRequestfinished.

  • panels_window分析一些关于间隔事件的数据时,
  1. 保持全局面板窗口数据写入panel_window _
  2. 的隐藏字段。

我希望也许有一个聪明的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19064652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档