无法拦截上下文菜单项单击

时间:2012-07-12 18:35:19

标签: javascript firefox-addon firefox-addon-sdk

有谁能告诉我这段代码有什么问题? 当用户选择一个单词并进行右键单击时,他可以选择“打开Wiki-Link” - 这工作正常。但由于某些原因,点击没有任何反应, onMessage中的代码未执行。为什么呢?

exports.main = function() {

    var tabs = require('tabs');
    //var sel = require('selection');
    var cm = require('context-menu');

    var menuItem = cm.Item({
        label: 'Open Wiki-Link',
        context: cm.SelectionContext(),
        contextScript: 'self.on("click", function() {' +
            'var text = window.getSelection().toString();' +
            'self.postMessage(text);' +    
        '});',
        onMessage: function(text) {
            if (text.length === 0) {
                throw ('No text selected');
            }
            tabs.open('http://de.wikipedia.org/wiki/' + text);
        }
    });
};

1 个答案:

答案 0 :(得分:1)

您的代码似乎是正确的,并且与documentation中的示例非常接近。我认为唯一的问题是拼写错误:它应该是contentScript,而不是contextScript