刷新附加组件 SDK 中的内容网址
refresh contenturl in add-on sdk
当我单击小部件图标时,如何使用内容网址刷新面板? 我的代码在这里很简单,它是:
var data = require("sdk/self").data;
exports.main = function() {
var panel = require("sdk/panel").Panel({
width: 400,
height: 560,
contentURL: "http://sample.com/index.html",
});
panel.on("show", function() {
panel.port.emit("show");
});
require("sdk/widget").Widget({
id: "Sample",
label: "Sample",
contentURL: data.url("icon128.png"),
panel:panel
});
};
更改面板在小部件上的contentURL
单击,如下所示:
require("sdk/widget").Widget({
id: "Sample",
label: "Sample",
contentURL: data.url("icon128.png"),
panel:panel,
onClick: function() {
panel.contentURL = contentURL;
}
});
请记住以下几点
小部件文档:
从 Firefox 29 开始,小部件 API 已弃用。请参阅 ui 模块进行更换。特别是,对于简单的按钮,请尝试操作按钮或切换按钮 API。
面板文档:
通过将按钮本身作为位置选项传递给面板的 show() 方法或其构造函数,可以将面板附加到切换按钮:
var { ToggleButton } = require('sdk/ui/button/toggle');
var panels = require("sdk/panel");
var self = require("sdk/self");
var button = ToggleButton({
id: "my-button",
label: "my button",
icon: {
"16": "./icon-16.png",
"32": "./icon-32.png",
"64": "./icon-64.png"
},
onChange: handleChange
});
var panel = panels.Panel({
contentURL: self.data.url("panel.html"),
onHide: handleHide
});
function handleChange(state) {
if (state.checked) {
panel.show({
position: button
});
}
}
function handleHide() {
button.state('window', {checked: false});
}
相关文章:
- React重新渲染但未显示正确的组件
- 不能从angular2中的子组件指定父组件中的数组
- 拨打'父亲'函数形式a'儿童'ReactJS中的组件
- React组件等待所需道具进行渲染
- 包括用于facebook评论框的JavaScript SDK
- 如何创建带有插槽的vue js组件预加载程序
- Google/html5语音识别JavaScript SDK Chrome网络工具包SpeechRecognition
- KnockoutJS-组件-多个实例
- 如何更改reactjs中外部/独立组件的状态或属性
- 在流星上使用微信js-sdk时出现拒绝权限错误
- 是否有一个 API 来控制火狐附加组件 SDK 中的下载
- 是否可以从 Firefox 运行 bash 脚本?(使用 Firefox 附加组件 SDK)
- Firefox 附加组件 SDK Worker.port 事件不起作用
- 任何限制 Mozilla 附加组件 SDK 中页面模组目标的方法
- 刷新附加组件 SDK 中的内容网址
- 如何在火狐附加组件SDK中将面板位置更改为鼠标位置
- 使用附加组件 SDK 加载音频文件并使用 Aurora.js 播放
- 将Facebook Web SDK与ReactJS组件状态集成
- 使用附加组件SDK创建XPI包
- Vuejs组件等待facebook sdk加载