appframework(jqmobi) 3.0 设置

1.重写 data-load data-unload 事件

在随便的js文件中添加一下的代码;

function dispatchPanelEvent(fnc,myPanel){
    if (typeof fnc === "string" && window[fnc]) {
        return window[fnc](myPanel);
    }
    else if(fnc.indexOf(".")!==-1){
        var scope=window,items=fnc.split("."),len=items.length,i=0;
        for(i;i<len-1;i++){
            scope=scope[items[i]];
            if(scope===undefined) return;
        }
        return scope[items[i]](myPanel);
    }
}
$(document).on("panelload",function(e){
   var hasLoad=$(e.target).attr("data-load");

   return dispatchPanelEvent(hasLoad,e.target);
})

$(document).on("panelunload",function(e){
   var hasLoad=$(e.target).attr("data-unload");

   return dispatchPanelEvent(hasLoad,e.target);
})

这样就可以在panel 的div中添加 data-load=‘test‘;
如下panel的

<div class="panel" id="plugins" data-title="plugins" data-unload=‘test‘ data-load=‘tests‘>

其中

function test(){
    alert(‘ddddd‘);
}
function tests(){
    alert(‘xxxxx‘);
}

 2. data-tab="settings" 没有起作用;

 <div class="panel" id="changetab" data-tab="settings"> 
               changetab
 </div>
        <footer>
            <a  href="#mainPage" class="icon home" data-transition="mainPage" id="settings">Main</a>
            <a href="#onePage" class="icon html5" data-transition="slide">onePage</a>
            <a href="#twoPage" class="icon trash" data-transition="up-reveal">twoPage</a>
            <a href="#threePage" class="icon trash" data-transition="up-reveal">threePage</a>
        </footer>

当跳转到changetab 这个panel时 footer 底部应该是id为settings这个高亮,但是却没有高亮;
通过修改af.ui.js里面的setActiveTab 函数;

        setActiveTab:function(ele,view){
        var hash;
        if(typeof(ele)!=="string")
        hash=$(ele).attr("data-tab"); 
        view.find("footer").find("a").removeClass("pressed").attr("data-ignore-pressed","true").filter("[id=‘"+hash+"‘]").addClass("pressed"); 
            // var hash;
            // if(typeof(ele)!=="string")
            //     hash=$(ele).prop("id");
            // hash="#"+hash;
            // view.find("footer").find("a").removeClass("pressed").attr("data-ignore-pressed","true").filter("[href=‘"+hash+"‘]").addClass("pressed");
        },

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。