首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery不支持消息后事件吗?

jQuery不支持消息后事件吗?
EN

Stack Overflow用户
提问于 2012-03-28 17:18:40
回答 2查看 27.8K关注 0票数 65

当我使用jQuery事件监听器处理消息事件时,如下所示:

代码语言:javascript
复制
$(window).on('message', function(e) {
    var data = e.data; // data = undefined
});

数据未定义!我确信我已经将数据传递给了当前窗口。因为如果我使用"addEventListener",一切都会很顺利!

那么,问题出在哪里呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-28 17:22:11

jQuery可能正在预处理事件的data属性,并且此操作可能(目前)不能正确支持message事件。

尝试使用originalEvent属性获取数据:

代码语言:javascript
复制
$(window).on("message", function(e) {
    var data = e.originalEvent.data;  // Should work.
});
票数 114
EN

Stack Overflow用户

发布于 2014-09-14 17:20:05

一些浏览器使用"onmessage“事件。我建议对前面的答案进行一点改进,以提高兼容性:

代码语言:javascript
复制
$(window).on("message onmessage", function(e) {
    var data = e.originalEvent.data;
});
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9904490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档