我正在使用弹出窗口和PageAction制作content script Chrome扩展程序。
我想在弹出窗口中使用jQuery来操作它的DOM来呈现数据(我使用jQuery作为内容脚本注入来从网站本身抓取)。我知道我可以直接在popup.html中加载jQuery并使用它。但是,我想看看我是否只能在后台页面中加载jQuery并在弹出窗口中访问它,而不是每次打开弹出窗口时都加载它。
为此,我在弹出窗口中尝试了以下内容:
var background = chrome.extension.getBackgroundPage();
var $ = background.jQuery;
$("#testID").innerHTML = "testing jQuery";
但它不起作用 - $("#testID")
未定义。我检查了jQuery是否在后台页面中加载,并使用$的替代名称,例如jq,jQuery等也没有用。
有关如何使这项工作的任何建议?
答案 0 :(得分:3)
$("#testID", document).html("testing jQuery");
我认为没有办法永久更改默认上下文,因此您需要将document
作为第二个参数传递给所有选择器。