I need to share some information between 2 tabs of the same browser pointing at the same site. I'm using the BroadcastChannel.onmessage event handler as detailed here: https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel/onmessage
In the sender tab javascript code I defined:
var bc = new BroadcastChannel('my_bc_channel');
bc.postMessage(i); //where i is simply the line number i want to share
And in the receiving tab:
var bc = new BroadcastChannel('my_bc_channel');
//then use this to receive the incoming messages:
bc.onmessage = function (ev) {
last_line = ev.data
}
My code works fine in Chrome, but it does not do anything in Firefox (latest version 70 freshly installed under windows). The compatibility chart in the link I gave above says it should be working from Firefox version 38.
The thing is, I'm not sure how to debug this. I don't have any error messages in the console. I don't know if it's the sender code that does not send anything. But clearly the receiving code is not triggered so I guess the .onmessage event is not detected. Where can I see in the javascript console if the message is sent ?
I opened a bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1600512
Seems BroadcastChannel.onmessage does not work properly when you host your files locally on your hard drive, as I did in my example above. It works otherwise.