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