0

在弹出窗口打开时,似乎没有事件被传播到内容 div。

我将弹出窗口用作警报消息,并且我希望在用户在页面上执行其他任务时保持打开状态。

现场示例:http: //jsfiddle.net/wvVmT/703/

我希望即使在弹出窗口打开后单击红色区域也会出现警报。

HTML:

<div data-role="page">
    <div data-role="content" id="content" style="background-color:red">
        content
        <a href="#" data-role="button" data-rel="popup" id="message-button">Message</a>
        <div data-role="popup" id="message-popup" data-history="false" data-dismissible="false">popup</div>
    </div>
</div>

JS:

$(function() {
  $( '#message-button' ).click(function()
    {
      $( '#message-popup' ).popup( 'open' );
    }
  );
  $( '#content' ).click(function()
    {
      alert('content');
    }
  )
});
4

1 回答 1

0

正如 Omar 所提到的,必须删除与弹出窗口关联的屏幕。

他建议删除所有弹出窗口的屏幕:

$('.ui-popup-screen').remove();

但实际上,在创建弹出窗口的那一刻,会创建一个具有相同 ID 后跟-screen的元素。因此,您可以只删除那个以保留所有其他人的屏幕。在我的例子中:

$('#message-popup-screen').remove();

做一次就足够了,所以你不需要像他的例子那样每次打开弹出窗口时都这样做;)

于 2014-03-10T13:37:10.893 回答