2015年2月8日日曜日

Chrome アプリ:<webview> から親要素へオブジェクトを渡す

Chrome アプリの <webview> から親要素(embedder)にデータを渡す際に console.log() を使う方法がある。

<webview> 内で console.log() を使用すると、<webview> の consolemessage イベントが実行される。
JSON データを console.log() で出力して、親側で受け取れば複雑なオブジェクトも渡すことができる。


親要素側
var webview = $('#my_webview');
webview.on('consolemessage', function(e) {
    var message = e.originalEvent.message;
    try {
        var datas = JSON.parse(message);
        console.log(' からデータを受け取りました', datas);
    } catch(e) {
        console.log(' からログが発行されました', message);
    }
});

webview 側
var result = {
    id: 1,
    value: 1234
};
var json = JSON.stringify(result);
console.log(json);

0 件のコメント:

コメントを投稿