【发布时间】:2015-08-13 18:37:14
【问题描述】:
我正在使用选择 API 和剪贴板 API 将用户选择的数据直接复制到剪贴板。当按钮被点击(handleClick 函数被调用)时,插件开始起作用。但问题是当我点击插件按钮停止它时,会生成一个错误,说data should be string
var self = require('sdk/self');
var clipboard = require("sdk/clipboard");
var selection = require("sdk/selection");
var selected_text =[];
var result;
var flag = false ;
function myListener() {
if (selection.text){
selected_text= selected_text.concat(selection.text);
result= selected_text.toString();
}
clipboard.set(result);
}
function handleClick(state) {
if (!flag){
selection.on('select', myListener);
flag= true;
} else {
clipboard.set(null);
}
}
require("sdk/ui/button/action").ActionButton({
id: "Selection",
label: "Click to start saving your next selections to clipboard",
icon: {
"16": "./icon-16.png",
"32": "./icon-32.png",
"64": "./icon-64.png"
},
onClick: handleClick
});
确切的错误消息:
JPM undefined Message: RequirementError: The option "data" must be one of the following types: string
如果有人可以建议一种方法来停止和启动插件在按钮上单击以及我在哪里执行错误,那就太好了。
【问题讨论】:
标签: javascript firefox firefox-addon firefox-addon-sdk