Jquery mobile “如何制作jqm”;“加载微调器”;满屏

Jquery mobile “如何制作jqm”;“加载微调器”;满屏,jquery-mobile,Jquery Mobile,jquerymobile提供了一个简单的加载器,但它不提供在加载过程中禁用页面上元素的方法 我的愿望清单: 1-如果$.mobile.loading方法提供了覆盖主题选项(如jqm弹出窗口) 2-如果$.mobile.loading方法接受了要将微调器放入的目标元素,例如设置为全屏的 $.mobile.loading( 'show', { text : "loading" , textVisible : true ,

jquerymobile提供了一个简单的加载器,但它不提供在加载过程中禁用页面上元素的方法

我的愿望清单:

1-如果$.mobile.loading方法提供了覆盖主题选项(如jqm弹出窗口)

2-如果$.mobile.loading方法接受了要将微调器放入的目标元素,例如设置为全屏的

$.mobile.loading( 'show', { text : "loading" ,
                            textVisible : true  ,
                            theme       : 'b'   ,
                            html        : ""     
                      }) ;
.ui-loader .ui-icon-loading {
    background-color: #000;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -1.375em;
    margin-top: -1.375em;
    width: 2.75em;
    height: 2.75em;
    padding: .0625em;
    -webkit-border-radius: 2.25em;
    border-radius: 2.25em;
}

.ui-loader-default {
    background: none;
    filter: Alpha(Opacity=18);
    opacity: .18;
}

.ui-loader {
    display: none;
    z-index: 9999999;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border:0;
}

但是,我想避免使用这样的解决方案,即我必须创建自己的
,并单独切换它,但要与$.mobile.load('show/hide',…)调用同步,如此所示。

在Firebug中使用ui loader类一段时间后,我最终放弃了这种方法,决定使用全屏div方法:

//-------------------------------------------------
var gvn_loader_bg_class = "jqm_loader_bg"       ;

//--------------------------------------------------
function gf_jqm_loader_setup()
  { 
    var lvo_loader          = jQuery( ".ui-loader" ) ;
    var lvi_loader_z        = lvo_loader.css('z-index') ;    

    var lvs_style  = "" ;
        lvs_style += "position         : fixed                         ;" ;
        lvs_style += "left             : 0%                            ;" ;
        lvs_style += "top              : 0%                            ;" ;
        lvs_style += "width            : 100%                          ;" ;
        lvs_style += "height           : 100%                          ;" ;
        lvs_style += "background-color : white                         ;" ;
        lvs_style += "opacity          : .3                            ;" ;
        lvs_style += "display          : none                          ;" ;
        lvs_style += "z-index          : " + ( lvi_loader_z - 1 ) + "  ;" ;

        lvo_loader.before( "<div class='" + gvn_loader_bg_class  + "' style='" + lvs_style + "'></div>" ) ;
  }

//-------------------------------------------------
function gf_toggle_jqm_loader( argb )
  { if( argb )
      { jQuery.mobile.loading( 'show') ;
        jQuery( "." + gvn_loader_bg_class ).css( 'display' , 'block' ) ;
      }
    else
      { jQuery.mobile.loading( 'hide') ;
        jQuery( "." + gvn_loader_bg_class ).css( 'display' , 'none' ) ;
      }
  } 
//-------------------------------------------------
var gvn_loader_bg_class=“jqm_loader_bg”;
//--------------------------------------------------
函数gf_jqm_loader_setup()
{ 
var lvo_loader=jQuery(“.ui loader”);
var lvi_loader_z=lvo_loader.css('z-index');
var lvs_style=“”;
lvs_样式+=“位置:固定;”;
lvs_风格+=“左:0%;”;
lvs_风格+=“顶部:0%;”;
lvs_样式+=“宽度:100%”;
lvs_风格+=“高度:100%;”;
lvs_风格+=“背景色:白色;”;
lvs_样式+=“不透明度:.3;”;
lvs_样式+=“显示:无;”;
lvs_样式+=“z-index:”+(lvi_加载程序_z-1)+“;”;
lvo_加载器。在(“”)之前;
}
//-------------------------------------------------
函数gf_toggle_jqm_loader(argb)
{if(argb)
{jQuery.mobile.load('show');
jQuery(“.”+gvn_loader_bg_class).css('display','block');
}
其他的
{jQuery.mobile.load('hide');
jQuery(“.”+gvn_loader_bg_class).css('display','none');
}
} 

这是我对jquery mobile css(1.4.2版)所做的更改,以便加载div可以全屏显示

$.mobile.loading( 'show', { text : "loading" ,
                            textVisible : true  ,
                            theme       : 'b'   ,
                            html        : ""     
                      }) ;
.ui-loader .ui-icon-loading {
    background-color: #000;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -1.375em;
    margin-top: -1.375em;
    width: 2.75em;
    height: 2.75em;
    padding: .0625em;
    -webkit-border-radius: 2.25em;
    border-radius: 2.25em;
}

.ui-loader-default {
    background: none;
    filter: Alpha(Opacity=18);
    opacity: .18;
}

.ui-loader {
    display: none;
    z-index: 9999999;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border:0;
}