两秒后让jquery移动弹出窗口消失

时间:2014-10-27 15:47:43

标签: jquery-mobile popup

他早些时候在这里提出了他的问题,但我没有得到这些答案。我使用按钮工作:

<div data-role="popup" id="test_popup">
      <p>this is a test</p>
    </div>
<a href="#test_popup" data-rel="popup" class="ui-btn ui-btn-inline ui-corner-all" id="button_stop3">test</a>

我试着把

<script type="text/javascript">
$(document).on('popupafteropen', '.ui-popup', function() {
 setTimeout(function () {
  $(this).popup('close');
 }, 2000);
});

</script>

在头部,但是没有用。我做错了什么?

(页面上有多个弹出窗口/按钮)

1 个答案:

答案 0 :(得分:0)

setTimeout执行该功能时,$(this)不会返回弹出窗口。相反,您应该在运行setTimeout之前检索弹出

$(document).on('popupafteropen', '.ui-popup', function () {
    var popup = $(this);
    setTimeout(function () {
        popup.popup('close');
    }, 2000);
});
  

<强> Demo