StorageEvent não funciona no Excel para Windows

Como sugerem alguns threads existentes (por exemplo,1, dois, três), atualCaixa de diálogo não fornece uma API para enviarregularmente mensagens da página do host (por exemplo, painel de tarefas) para a caixa de diálogo.

Então, eu tenho que procurar uma solução alternativa: reservamos uma variávelmessage nolocalStorage, então marcamos a caixa de diálogoregularmente se o valor demessage alterar. É como implementar manualmente um ouvinte de eventoslocalStorage.

Alguém sabe como implementar isso de uma maneira segura e eficiente (dado que o JavaScript não é uma linguagem multiencadeada)? Não quero que esse ouvinte seja caro, e qual seria o intervalo apropriado para definir?

Editar 1:

Tentei o StorageEvent que @PatrickEvans sugeriu. Para o site de suplemento e de diálogo, precisamos implementar umsendMessage... e umreceiveMessage... pelas variáveismessageFromHostToSite emessageFromSiteToHost Em armazenamento.

Funcionou no Excel Online no Chrome e no Excel Online no IE 11. No entanto, NÃO funcionou no Excel 2016 para Windows 7 ou 10; podemos definir itens paralocalStorage e recuperá-los, mudandolocalStorage parece não disparar nada.

Então, alguém poderia confirmar que o StorageEvent realmente não é suportado no Excel 2016 para Windows 7 ou 10? Nesse caso, ainda estou procurando outras soluções alternativas ...

Edição 2:

Finalmente fiz um exemplo simplificado: aqui está oarquivo xml, que chamao suplemento eo site. Funciona bem no Excel Online, mas NÃO dispara eventos no Excel para Windows.

questionAnswers(1)

yourAnswerToTheQuestion