弹出延迟对话框(setTimeout)

时间:2015-07-15 15:01:39

标签: javascript

在用户单击开启器后,窗口底部会弹出一个对话框。如果用户尚未打开对话框,我希望在10秒后自动弹出对话框。有人可以帮我把setTimeout代码添加到我的JS吗?感谢。



<script type="text/javascript">
$("#dialog").dialog({
    autoOpen: false,
    modal: false,
    draggable: false,
    height: "170",
    width: "150",
	title: false,
	show: {effect: 'slide', direction: 'down', speed: 1000},
    hide: {effect: 'slide', direction: 'down', speed: 1000},
    resizable: false,
    position: { my: "right bottom", at: "right bottom", of: window },
    create: function (event) { $(event.target).parent().css('position', 'fixed');},
    open: function() {
   
    }
});

$( "#opener" ).click(function() {
  $( "#dialog" ).dialog( "open" );
});
</script>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

如果用户手动打开对话框,请使用setTimeout然后清除它。如果您不清除它,则可以打开对话框两次(一次来自用户,然后再次来自setTimeout

var openAuto = setTimeout(function () {
  $("#dialog").dialog("open");
}, 10000);

$("#opener").click(function() {
  clearTimeout(openAuto);
  $("#dialog").dialog("open");
});
相关问题