1 回答

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
通過發(fā)送和接收消息來實(shí)現(xiàn)前面頁面與后臺線程互相傳遞數(shù)據(jù)。如果想接收消息,用下面方式之一。
第1種方法,通過獲取Worker對象的onmessage事件的句柄可以在后臺線程中接收消息,代碼如下。方法的回調(diào)函數(shù)的參數(shù)(下面代碼中的event)中,有線程交互的數(shù)據(jù)。
worker.onmessage=function(event) {
//消息處理,數(shù)據(jù)為event.data
}
第2種方法,使用addEventListener()方法對message事件進(jìn)行監(jiān)聽。
work.addEventListener("message",function(event) {
//document.getElementById(‘message’).innerHTML=e.data;
//消息處理,數(shù)據(jù)為event.data
},false);
如果想要發(fā)送消息, 需要使用postMessage()方法。使用Worker對象的postMessag()方法來發(fā)送消息,代碼如下。發(fā)送的消息是文本數(shù)據(jù),也可以是JSON。
worker.postMessage(message);
添加回答
舉報(bào)