firefox 客户端
firefox-client 是一个 节点 用于远程调试 Firefox 的库。 你可以用它来制造事情 fxconsole 函数,一个远程JavaScript REPL.
var FirefoxClient = require("firefox-client");
var client = new FirefoxClient();
client.connect(6000, function() {
client.listTabs(function(err, tabs) {
console.log("first tab:", tabs[0].url);
});
});
安装
与 节点.js npm 软件包管理器 :
npm install firefox-client
连接中
桌面火花
-
启用远程调试( 您只需做一次)
-
开德佛道. Web 开发者 > 翻译: 切换工具
-
访问设置面板( 工具图标)
-
在高级设置下检查“ 允许远程调试”
-
听一个连接
-
打开 Firefox 命令行 工具 > 翻译: Web 开发者 > 翻译: 开发者工具栏。 。 。 .
-
通过输入此命令启动服务器 :
listen 6000(何处)6000是端口号码)
Android 的 Firefox 软件
执行指令 这个哈克视频
Firefox 操作系统1.1 模拟器
一套有限的API(Console, (中文(简体) ), StyleSheets)与 模拟 4.0见 维基指令 用于连接.
client.listTabs() 将列出模拟器中当前打开的应用程序 .
Firefox OS 1.2+ (英语). 模拟器和装置
client.getWebapps() 将曝光模拟器中的 Webapps, 每个应用程序执行 Tab API (英语).
client.getWebapps(function(err, webapps) {
webapps.getApp("app://homescreen.gaiamobile.org/manifest.webapp", function (err, app) {
console.log("homescreen:", actor.url);
app.Console.evaluateJS("alert('foo')", function(err, resp) {
console.log("alert dismissed");
});
});
});
兼容性
此库的最新版本将保持兼容性 夜来火狐。几乎全部将兼容 火狐奥罗拉 还有.
API 密码
A 类 FirefoxClient 是 API 的切入点。 连接后,得到一个 Tab 对象为 listTabs() 或者说 selectedTab()。一旦你有一个 Tab,你可以调用方法,并听从标签模块中的事件, Console 或者说 Network。还有实验 DOM 财务报告和审定财务报表 StyleSheets 选项卡模块,以及即将到来的 Debugger 模块.
方法
API 几乎所有的呼叫都使用一个调用回调,它会以错误被调用作为第一个参数(或 null 如果没有出错,则返回值为第二个值:
tab.Console.evaluateJS("6 + 7", function(err, resp) {
if (err) throw err;
console.log(resp.result);
});
活动
模块是 EventEmitters, 倾听事件 on 或者说 once,停止倾听 off数字 :
tab.Console.on("page-error", function(event) {
console.log("new error from tab:", event.errorMessage);
});
单元和物品的提供情况摘要:
火狐浓度
方法: connect(), (中文(简体) ), disconnect(), (中文(简体) ), listTabs(), (中文(简体) ), selectedTab(), (中文(简体) ), getWebapps(), (中文(简体) ), getRoot()
活动 : "error", (中文(简体) ), "timeout", (中文(简体) ), "end"
标签
属性 : url, (中文(简体) ), title
方法: reload(), (中文(简体) ), navigateTo(), (中文(简体) ), attach(), (中文(简体) ), detach()
活动 : "navigate", (中文(简体) ), "before-navigate"
标签。 控制台
方法: evaluateJS(), (中文(简体) ), startListening(), (中文(简体) ), stopListening(), (中文(简体) ), getCachedLogs()
活动 : "page-error", (中文(简体) ), "console-api-call"
JS 目标
属性 : class, (中文(简体) ), name, (中文(简体) ), displayName
方法: ownPropertyNames(), (中文(简体) ), ownPropertyDescriptor(), (中文(简体) ), ownProperties(), (中文(简体) ), prototype()
标签。 网络
方法: startLogging(), (中文(简体) ), stopLogging(), (中文(简体) ), sendHTTPRequest()
活动 : "network-event"
网络活动
属性 : url, (中文(简体) ), method, (中文(简体) ), isXHR
方法: getRequestHeaders(), (中文(简体) ), getRequestCookies(), (中文(简体) ), getRequestPostData(), (中文(简体) ), getResponseHeaders(), (中文(简体) ), getResponseCookies(), (中文(简体) ), getResponseContent(), (中文(简体) ), getEventTimings()
活动 : "request-headers", (中文(简体) ), "request-cookies", (中文(简体) ), "request-postdata", (中文(简体) ), "response-start", (中文(简体) ), "response-headers", (中文(简体) ), "response-cookies", (中文(简体) ), "event-timings"
标签.DOM
方法: document(), (中文(简体) ), documentElement(), (中文(简体) ), querySelector(), (中文(简体) ), querySelectorAll()
多摩多语种
属性 : nodeValue, (中文(简体) ), nodeName, (中文(简体) ), namespaceURI
方法: parentNode(), (中文(简体) ), parents(), (中文(简体) ), siblings(), (中文(简体) ), nextSibling(), (中文(简体) ), previousSibling(), (中文(简体) ), querySelector(), (中文(简体) ), querySelectorAll(), (中文(简体) ), innerHTML(), (中文(简体) ), outerHTML(), (中文(简体) ), setAttribute(), (中文(简体) ), remove(), (中文(简体) ), release()
标签。 样式表
方法: getStyleSheets(), (中文(简体) ), addStyleSheet()
样式表
属性 : href, (中文(简体) ), disabled, (中文(简体) ), ruleCount
方法: getText(), (中文(简体) ), update(), (中文(简体) ), toggleDisabled(), (中文(简体) ), getOriginalSources()
活动 : "disabled-changed", (中文(简体) ), "ruleCount-changed"
标签。 内存
方法: measure()
网络应用程序
方法: listRunningApps(), (中文(简体) ), getInstalledApps(), (中文(简体) ), watchApps(), (中文(简体) ), unwatchApps(), (中文(简体) ), launch(), (中文(简体) ), close(), (中文(简体) ), getApp(), (中文(简体) ), installHosted(), (中文(简体) ), installPackaged(), (中文(简体) ), installPackagedWithADB(), (中文(简体) ), uninstall()
活动 : "appOpen", (中文(简体) ), "appClose", (中文(简体) ), "appInstall", (中文(简体) ), "appUninstall"
实例
fxconsole 函数 - Firefox 的远程JavaScript控制台
webapps 测试脚本 - 所有网络应用功能的样本使用
反馈
你从API那里需要什么? 提交一个问题。 。 。 .