2

サイトにポップアップ div のあるページがあります。

<div data-role="popup" id="MyPopup">
    <a href="#" data-rel="back" data-theme="a" data-icon="delete" 
      class="...">Close</a>
    <div id="Gaia_Ages_Content" class="...">
        <p>Oops! Could not find information for that item!</p>
    </div>
</div>

.load メソッドを使用して、ポップアップに外部 HTML ファイルを表示します。

$("MyPopup").load(_LoadUrl);

それだけでうまくいきます。

ロードするファイルが見つからない場合にエラーメッセージとして機能するポップアップのコンテンツをリセットする「popupafterclose」イベントのハンドラーがあります。

$("MyPopup").on("popupafterclose",function(event, ui) {
    ...
    $thisPage_Popup.html('<div ... </div>');
});

これも問題なく動作します。

機能しないのは、2 番目のハンドラーです。

$("MyPopup").on("pagecontainerload",function(event, ui) {
    LinkExtTarget (_thisPage_Popup);
});

これのポイントは、すべての外部リンクを強制的に新しいウィンドウで開く関数を呼び出すことです。その関数は、他の場所で呼び出されたときに機能します。popupafterclose ハンドラーは、期待どおりにトリガーされ、関数は適切に実行されます。pagecontainerload ハンドラーは決してトリガーされず、外部リンクは私が思っていたように処理されません。

助けていただければ幸いです。

4

0 に答える 0