带双引号的环绕电流选择

时间:2013-07-29 05:12:04

标签: firefox-addon escaping selection double-quotes

我正在制作一个firefox扩展,我正在尝试捕获上下文菜单中的当前选择,它可以正常工作。但是我希望当前的选择用双引号括起来。代码段:

contentScript: 'self.on("context", function () {' +
             '  var text = \"'+'window.getSelection().toString()'+'\";' +
             '  if (text.length > 20)' +
             '    text = text.substr(0, 20) + "...";' +
             '  return "Search Google for " + text;' +
             '});'

javascript用单引号括起来,我试图在上面的代码片段中转义双引号但我在上下文菜单中得到以下输出:

Search Google for window.selection(...

如何在搜索字符串中转义双引号。我试图在返回的字符串中添加双引号但是徒劳无功。我认为这可能是因为javascript代码本身就是一个字符串。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

你可以这样做:

var text = "\"" + window.getSelection().toString() + "\"";

您可以查看this jsFiddle以查看其实际效果。

您的代码如下所示:

contentScript: 'self.on("context", function () {' +
            ' var text = window.getSelection().toString();' +
            ' if (text.length > 20) ' +
            '    text = text.substr(0, 20) + "...";' +
            ' text = "\"" + text + "\""; ' +
            ' return "Search Google for " + text;' +
            ' });'