【问题标题】:Firefox Quantum SharedWorker not workFirefox Quantum SharedWorker 不工作
【发布时间】:2017-11-21 13:40:02
【问题描述】:

在 Chrome 和 Firefox

目标是将消息发送到浏览器中的另一个选项卡。

当填写文本输入并单击发送按钮时,浏览器中的另一个选项卡应该在浏览器控制台中写入消息。

html 文件:

<script type="text/javascript">
    const myWorker = new SharedWorker( "sharedWorkerChat.js" );
    const port = myWorker.port;

    port.addEventListener( "message", function( e ) {
        console.log( e.data );
    }, false );

    port.start();

    function postMessage() {
        const value = document.getElementById( "input" ).value;
        console.log( value );
        port.postMessage( value );
    }
</script>


<input type="text" id="input" />

<button onclick="postMessage()"> Send </button>

sharedWorkerChat.js

var m;

var instances = [];
self.addEventListener( "connect", function ( e ) {
    var port = e.ports[ 0 ];
    instancias.push( port );

    port.addEventListener( "message", function ( message ) {
        m = message.data;
        instances.forEach( function( p ) {
            p.postMessage( m );
        });
    }, false );

    port.start();
}, false);

【问题讨论】:

    标签: firefox shared-worker


    【解决方案1】:

    我刚刚遇到了同样的问题,显然 Firefox Quantum 默认启用了多处理功能,但它还不支持 SharedWorkers。

    要检查您是否在地址栏中输入 about:debugging#workers 启用多处理功能,如果它处于活动状态,您应该会在页面顶部看到关于 SharedWorkers 的黄色警告。

    您可以通过点击该警告上的链接来禁用此功能。

    【讨论】:

    猜你喜欢
    • 2018-05-06
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 2018-07-09
    • 2018-06-13
    • 1970-01-01
    相关资源
    最近更新 更多