onmessage 事件
实例
创建一个新的 EventSource 对象,并指定发送更新的页面的 URL。
每次收到更新时,都会发生 onmessage 事件。当 onmessage 事件发生时,会把接收到的数据放入 id="myDIV" 的 <div> 元素中:
var source = new EventSource("demo_sse.php"); source.onmessage = function(event) { document.getElementById("myDIV").innerHTML += event.data + "<br>"; };
页面下方有更多 TIY 实例。
定义和用法
当通过事件源接收到消息时,会发生 onmessage 事件。
onmessage 事件的 event 对象支持以下属性:
- data - 包含实际的消息
- origin - 调用事件的文档的 URL
- lastEventId - 在事件流中看到的最后一条消息的标识符
相关事件:
有关服务器发送事件(Server-Sent Events)的更多知识,请学习我们的 HTML5 服务器发送事件教程。
浏览器支持
表中的数字注明了完全支持该事件的首个浏览器版本。
事件 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onmessage | 9.0 | 不支持 | 6.0 | 5.0 | 11.0 |
语法
object.onmessage = function(){myScript};
使用 addEventListener() 方法:
object.addEventListener("message", myScript);
注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法。
技术细节
冒泡: | 不支持 |
---|---|
可取消: | 不支持 |
事件类型: | Event |
更多实例
获取调用 onmessage 事件的文档的 URL:
var source = new EventSource("demo_sse.php"); source.onmessage = function(event) { document.getElementById("myDIV").innerHTML = event.origin; };
结果会是:
https://www.w3school.org.cn/