亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

web works 顯示新線程未被創建,請問works.js 要怎樣被主線程調用?

web works 顯示新線程未被創建,請問works.js 要怎樣被主線程調用?

慕森卡 2018-12-29 23:14:55
主線程的js 代碼直接嵌在html文件內,html文檔和works.js路徑如圖所示:主線程代碼如下,”新線程的url,必須在本域下“到底應該怎么操作?:<script>var w;function startWorker() {    if(typeof(Worker) !== "undefined") {        if(typeof(w) == "undefined") {            w = new Worker("js/works.js");//我們在一個外部 JavaScript 中創建我們的 web worker。新線程的url,必須在本域下。        }        w.onmessage = function(event) {            document.getElementById("result").innerHTML = event.data;        };    } else {        document.getElementById("result").innerHTML = "抱歉,你的瀏覽器不支持 Web Workers...";    }}</script>報錯信息如下圖,而且我是在本地上運行的代碼,沒有放在服務器上,瀏覽器是chrome的,不存在不兼容的情況:
查看完整描述

1 回答

?
慕的地6264312

TA貢獻1817條經驗 獲得超6個贊

好像是你直接打開了html文件,導致了跨域問題。你可以搭建一個服務器環境跑一跑。我剛測試了你的代碼,成功運行。


你可以在本地搭建一個服務器環境,模擬同域,進行測試。一下意見幾個簡單的臨時服務器方案。


php5.4以上

可以在當前目錄打開命令行,執行


php -s localhost:8080

然后可以直接訪問 http://localhost:8000。


python

在當前目錄打開命令行,執行


  python -m SimpleHTTPServer

# 默認啟動在8000端口

然后打開 http://localhost:8000。

如果你有node,可以試試json-server 具體的我也忘了,你可以查查資料。

當然用什么不重要,最重要的是搭建一個服務器環境,解決跨域問題。本地同服務器下所有的資源都是同域


查看完整回答
反對 回復 2019-01-16
  • 1 回答
  • 0 關注
  • 549 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號