chrome.extension
描述: |
chrome.extension API 包含任何扩展程序页面都能使用的实用方法。它包括在扩展程序和内容脚本之间或者两个扩展程序之间交换消息的支持,这一部分内容在消息传递中详细描述。
|
可用版本: |
从 Chrome 5 开始稳定支持。
|
属性
lastError
chrome.extension.lastError
lastError ( object )
如果异步扩展程序 API 发生错误,将在回调函数的生命周期内设置该属性。如果没有错误发生,lastError 将为 undefined。
-
message
(
string
)
-
对发生的错误的描述。
inIncognitoContext
chrome.extension.inIncognitoContext
inIncognitoContext ( boolean )
如果内容脚本正在隐身标签页中运行,或者扩展程序页面在隐身进程中运行,则为 true。后一种情况只适用于具有分离("split")隐身行为的扩展程序。
方法
sendRequest
sendRequest 已弃用。请使用 runtime.sendMessage。
chrome.extension.sendRequest(string extensionId, any request, function responseCallback)
向扩展程序中的其他监听者(或另一个扩展程序/应用)发送单个请求。与 runtime.connect 类似,但是只发送具有可选回应的单个请求。onRequest 事件将在扩展程序的每一个页面中产生。
参数
-
extensionId
(
optional
string
)
-
您希望连接的扩展程序标识符,如果省略,默认为您自己的扩展程序。
-
responseCallback
(
optional
function
)
-
如果您指定了 responseCallback 参数,它应该指定一个如下形式的函数:
function(any response) {...};
-
response
(
any
)
-
请求处理程序发出的 JSON 响应对象。如果连接到指定标签页的过程中发生错误,将不传递参数调用回调函数,并将 runtime.lastError 设置为错误消息。
getURL
string chrome.extension.getURL(string path)
将扩展程序安装目录中的相对路径转换为完整的 URL。
参数
-
path
(
string
)
-
扩展程序内的资源,以相对于安装目录的路径表示。
getViews
array of window chrome.extension.getViews(object fetchProperties)
返回一个数组,含有每一个在当前扩展程序中运行的页面的JavaScript window 对象。
参数
-
fetchProperties
(
optional
object
)
-
-
属性
-
type
(
optional
enum of "tab"
, "infobar"
, "notification"
, or "popup"
)
-
要获取的视图类型。如果省略,返回所有视图(包括后台页面和标签页)。有效值为:"tab"(标签页)、"infobar"(信息栏)、"notification"(通知)、"popup"(弹出窗口)。
-
windowId
(
optional
integer
)
-
将搜索限制在指定窗口中。如果省略,返回所有视图。
getBackgroundPage
window chrome.extension.getBackgroundPage()
返回运行在当前扩展程序中的后台网页的 JavaScript window 对象。如果扩展程序没有后台网页则返回 null。
返回值类型的属性
getExtensionTabs
getExtensionTabs 已弃用。请使用 getViews {type: "tab"}
。
array of window chrome.extension.getExtensionTabs(integer windowId)
返回包含 JavaScript 'window' 对象的数组,对应当前扩展程序中运行的每一个标签页。如果指定了 windowId
,只返回附加到指定窗口的标签页的 'window' 对象。
参数
-
windowId
(
optional
integer
)
-
isAllowedIncognitoAccess
chrome.extension.isAllowedIncognitoAccess(function callback)
获取该扩展程序能否在隐身模式中使用(由用户控制的“在隐身模式下启用”复选框决定)的状态。
参数
callback 参数应该指定一个如下形式的函数:
function(boolean isAllowedAccess) {...};
-
isAllowedAccess
(
boolean
)
-
如果该扩展程序允许在隐身模式下使用则为 true,否则为 false。
isAllowedFileSchemeAccess
chrome.extension.isAllowedFileSchemeAccess(function callback)
获取该扩展程序能否访问 file:// 协议(由用户控制的“允许访问文件网址”复选框决定)的状态。
参数
callback 参数应该指定一个如下形式的函数:
function(boolean isAllowedAccess) {...};
-
isAllowedAccess
(
boolean
)
-
如果该扩展程序可以访问 file:// 协议则为 true,否则为 false。
setUpdateUrlData
chrome.extension.setUpdateUrlData(string data)
设置扩展程序更新 URL 中使用的 CGI 参数 ap 的值,对于托管在 Chrome 网上应用店的扩展程序将忽略这一值。
参数
事件
onRequest
onRequest 已弃用。请使用 runtime.onMessage。
扩展程序进程或内容脚本发送请求时产生。
addListener
chrome.extension.onRequest.addListener(function callback)
参数
callback 参数应该指定一个如下形式的函数:
function(any request, runtime.MessageSender sender, function sendResponse) {...};
-
request
(
optional
any
)
-
调用脚本发送的请求。
-
sendResponse
(
function
)
-
有响应时调用的函数(最多调用一次),参数必须是可以转换为 JSON 的对象,或者没有响应时为 undefined。如果在同一文档中有多个
onRequest
监听器,只有其中一个可以发送响应。
onRequestExternal
onRequestExternal 已弃用。请使用 runtime.onMessageExternal。
请求从另一个扩展程序发送时产生。
addListener
chrome.extension.onRequestExternal.addListener(function callback)
参数
callback 参数应该指定一个如下形式的函数:
function(any request, runtime.MessageSender sender, function sendResponse) {...};
-
request
(
optional
any
)
-
调用脚本发送的请求。
-
sendResponse
(
function
)
-
有响应时调用的函数(最多调用一次),参数必须是可以转换为 JSON 的对象,或者没有响应时为 undefined。