论坛首页 Web前端技术论坛

模拟alert对话框,N秒不点击自动关闭(基于jQuery模式对话框)

浏览 12394 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (5)
作者 正文
   发表时间:2009-12-04   最后修改:2009-12-04
jQuery 模式对话框地址:http://jqueryui.com/demos/dialog/

代码:
//jquery.alert.js
(function($){
  $.alert = function(message, timeToLive, options){

    var ttl = timeToLive || 1000;

    var defaultOptions = $.extend({
      title:window.location.host,
      height: 130,
      width: 385,
      modal: false
    },options || {});

    if(!$("#jquery_alert").length){
      $("body").append("<div id='jquery_alert' />");
    }

    $("#jquery_alert").dialog(defaultOptions);

    $("#jquery_alert").html(message);

    $("#jquery_alert").dialog("open");

    setTimeout(function(){
      $("#jquery_alert").dialog("close")
      },ttl);
  }
})(jQuery);


以在rails使用为例:
<% content_for :head do  %>
  <%= stylesheet_link_tag 'jquery' %>
  <%= stylesheet_link_tag 'jquery-ui/ui.all' %>
  <%= stylesheet_link_tag 'jquery-ui/ui.dialog' %>
  <%= javascript_include_tag 'jquery-ui/ui.dialog' %>
  <%= javascript_include_tag 'jquery.alert' %>
  <script type="text/javascript">
    $(document).ready(function(){
      $.alert("Hello,Hooopo!!!")
    });
   
  </script>
<% end %>

默认样式:

经过我业余美工改过之后...
   发表时间:2009-12-08  
不太漂亮 
0 请登录后投票
   发表时间:2009-12-08  
whaosoft 写道
不太漂亮 

漂亮是美工的事.........
0 请登录后投票
   发表时间:2009-12-09  
无论哪种形式模拟的,如果不能阻塞脚本的运行都是徒劳
0 请登录后投票
   发表时间:2009-12-09  
jxpath 写道
无论哪种形式模拟的,如果不能阻塞脚本的运行都是徒劳

只是用来做一种友好的提示信息,免得用户去点烦人的alert..和阻塞脚本有关系吗?
0 请登录后投票
   发表时间:2009-12-10  
jxpath 写道
无论哪种形式模拟的,如果不能阻塞脚本的运行都是徒劳

如果单纯不像让用户操作可以用一个div把整个屏幕盖住(用一个半透明的png图片填充),这样可以暂时让用户不能乱点。
0 请登录后投票
   发表时间:2009-12-10  
bookong 写道
jxpath 写道
无论哪种形式模拟的,如果不能阻塞脚本的运行都是徒劳

如果单纯不像让用户操作可以用一个div把整个屏幕盖住(用一个半透明的png图片填充),这样可以暂时让用户不能乱点。

这个功能jquery的模式对话框本身自带,而且跨浏览器...
0 请登录后投票
   发表时间:2009-12-20  
alert 和scanf一样 是阻塞滴....
1 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics