码迷,mamicode.com
首页 > Web开发 > 详细

js Postmessage 跨域传输数据的简单应用

时间:2015-01-05 19:01:37      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:

    www.test.com

<?php
@ini_set(‘default_charset‘, ‘utf-8‘);
?>
<input type="text" value="send" id="input" />
<input type="button" value="send" id="button" />
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script>
    document.getElementById(‘button‘).onclick = function () {
        var command = "$(window.document.body).append(‘数据‘)";
        window.parent.postMessage(‘run:‘ + command, document.referrer);
    };
</script>


另外域名的 www.test2.com

<?php
@ini_set(‘default_charset‘, ‘utf-8‘);
?>
<iframe src="http://www.test.com/test2.php"></iframe>
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script>
    var rootUrl = ‘http://www.test.com/‘;
    $(window).on(‘message‘, function (e) {
        var command = e.originalEvent.data, origin = e.originalEvent.origin;
        if ((rootUrl == origin || rootUrl == origin + ‘/‘) && typeof command == ‘string‘ && command.substr(0, 4) == ‘run:‘) {
            command = command.substr(4);
            eval(command);
        }
    });
</script>




js Postmessage 跨域传输数据的简单应用

标签:

原文地址:http://my.oschina.net/xinson/blog/363954

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!