2

このQ&Aを確認しましたが、私の問題は解決しません: 複数の関数またはカスタムコールバックを含むPostMessage

ロード時にpostMessageを使用し、次にクリックイベント内で別のメッセージを使用する必要があります。両方のレシーバーは同じページ(親)にあります。

postMessageをスコープする方法はありますか?または複数のpostMessageを送信しますか?メッセージを解析して特定の機能をトリガーすることはできますが、複数の投稿を作成するにはどうすればよいですか?

ありがとう

4

1 に答える 1

1

私のpostMessage:

    $.postMessage(
        'layerTitle|'+ layerTitle +'',
        '*',
        parent
      );
...
var getDocHeight = $(document).height();
     $.postMessage(
        'iframeHeight|'+ getDocHeight +'',
        '*',
        parent
      );

と私の受信:

$.receiveMessage(
  function(e){
    var message = e.data.split('|');
    if(message[0] == "layerTitle"){
    $('#ui-dialog-title-loginDialog').empty().append(message[1]);
    }
    if(message[0] == "iframeHeight"){
        $('#loginLayer').attr('height', message[1]);
    }

  }
);
于 2012-06-29T12:57:03.733 に答える