2

我正在尝试将节点 ID 从从弹出页面运行的脚本发送到从标签页运行的脚本。有时有效,有时无效;我还没有找到任何押韵或理由来解释它为什么这样做或不这样做。

这是我发送消息的弹出代码:

$(".node-list-item").click( function()
        {
            nodeid = $(this).attr("nid");
            chrome.tabs.create({ url: "tab.html"}, function(tab)
            {
                console.log("Sending nid: " + nodeid);
                chrome.tabs.sendMessage(tab.id, { nid: nodeid});
            });
        });

这是接收它的代码:

chrome.extension.onMessage.addListener(function(message, sender, response)
        {
            console.log(message);
            add_notice("Received node: " + message.nid);
            show_node(message.nid);
        });

为什么这有时会起作用,但不是一直起作用?我确实知道发送函数总是发送一个值,或者至少 console.log 函数正在运行。

4

0 回答 0