我的网站上有一个带有弹出 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>');
});
这也很好用。
不起作用的是第二个处理程序。
$("MyPopup").on("pagecontainerload",function(event, ui) {
LinkExtTarget (_thisPage_Popup);
});
这样做的目的是调用一个函数,该函数将强制所有外部链接在新窗口中打开。该函数在其他地方调用时有效。popupafterclose 处理程序在我期望的时候被触发,并且函数被正确执行。pagecontainerload 处理程序永远不会被触发,并且外部链接也没有像我想象的那样被处理。
我会很感激任何帮助。