zoukankan      html  css  js  c++  java
  • 页面异步过程中的遮罩

               原本是要继续发自定义控件形式的分页,但是我看了好一会觉得大概思路是利用委托实现事件调用重新绑定数据,我个人不太推荐这种,所以在此也就发了。

        采用AJAX异步方式请求在现在页面中非常普遍,原本延迟加载是异步加载的优势。但在不同情况下,如果用户已经发起一个异步请求,再去触发其他的请求可能会导致一些页面错误,假如能在第一次异步后加个页面遮罩就能很好的处理这个情况了。

        介绍的第一个遮罩是利用easyui的messager.progress,效果如下:

                         

       <link href="jquery-easyui-1.3.5/themes/default/easyui.css" rel="stylesheet" />
        <script src="jquery-easyui-1.3.5/jquery.easyui.min.js"></script>
    function func2() { $.messager.progress({ title: '请稍后', msg: '', text: '正在请求后台' }); setTimeout(function () { $.messager.progress('close');//关闭遮罩 alert(123); }, 4000); }

         第二种是利用jquery的mask()方法,给某个元素添加遮罩,效果如下:

                      

         <script src="jquery-min-1.9.1.js"></script>
         <link href="jquery.loadmask.css" rel="stylesheet" />
         function Func () { $("body").mask("正在请求后台。。。"); setTimeout(function () { $("body").unmask();//取消遮罩 if (result == "ok") { alert(123); } },4000); }

         其中mask()这个方法需要注意我引用的是1.9.1的版本,  如果引用1.7.2是不会显示遮罩的(具体是那个版本开始支持的我不太清楚,需要查下)

        最后再介绍一个插件我用的比较多的blockUI,还是先看效果:

             

           <script src="jquery-1.7.2.min.js"></script>
        <script src="jquery.blockUI.js"></script>
        function func3() { $.blockUI({ message: "<div style='float:left;margin-left:35%'><img src='bg.gif' width='30px';height='30px' />
                   </div><div style='line-height:30px;float:left;margin-left:10%'>请稍候</div>", css: { border: 'none', padding: '15px', backgroundColor: 'Grey', "300px", opacity: .5, color: 'Red' } }); setTimeout($.unblockUI, 2000); }

          其他还有很多,我列的是我以前整理的,仅供参考。

  • 相关阅读:
    ORA12518 TNS:监听程序无法分发客户机连接的解决办法
    纯css手风琴效果
    css2实现尖角箭头式导航
    html+css基础
    iOS开发之压缩与解压文件
    一种简便的ios图片加密方法对图片进行base64编码
    将自己的应用程序显示在报刊杂志中
    [转]苹果iOS 5限制应用本地存储问题
    [转]苹果开发者帐号(Company)申请流程
    [转]IOS6.0框架及功能更新小结
  • 原文地址:https://www.cnblogs.com/sgfyfqh/p/4012777.html
Copyright © 2011-2022 走看看