1***@qq.com
1***@qq.com
  • 发布:2018-04-04 19:13
  • 更新:2018-04-04 19:30
  • 阅读:1339

mui.init中初始化show参数没有生效

分类:MUI
mui

1.我在页面加载后调用

mui.init({  
show:{  
aniShow:''fade-in'  
})

但是默认效果还是‘fade-in-right’,
我去调试源码发现,一下时部分源码

alert(JSON.stringify($.options))// 弹出的信息显示没有初始化show参数  
    setTimeout(function(){  
        alert(JSON.stringify($.options))//异步执行后,弹出的信息显示有show这个参数  
    },2000)  
    var defaultOptions = {  
        swipeBack: false,  
        preloadPages: [], //5+ lazyLoad webview  
        preloadLimit: 10, //预加载窗口的数量限制(一旦超出,先进先出)  
        keyEventBind: {  
            backbutton: true,  
            menubutton: true  
        },  
        titleConfig: {  
            height: "44px",  
            backgroundColor: "#f7f7f7", //导航栏背景色  
            bottomBorderColor: "#cccccc", //底部边线颜色  
            title: { //标题配置  
                text: "", //标题文字  
                position: {  
                    top: 0,  
                    left: 0,  
                    width: "100%",  
                    height: "100%"  
                },  
                styles: {  
                    color: "#000000",  
                    align: "center",  
                    family: "'Helvetica Neue',Helvetica,sans-serif",  
                    size: "17px",  
                    style: "normal",  
                    weight: "normal",  
                    fontSrc: ""  
                }  
            },  
            back: {  
                image: {  
                    base64Data: '',  
                    imgSrc: '',  
                    sprite: {  
                        top: '0px',  
                        left: '0px',  
                        width: '100%',  
                        height: '100%'  
                    },  
                    position: {  
                        top: "10px",  
                        left: "10px",  
                        width: "24px",  
                        height: "24px"  
                    }  
                }  
            }  
        }  
    };  

    //默认页面动画  
    var defaultShow = {  
        event:"titleUpdate",  
        autoShow: true,  
        duration: 300,  
        aniShow: 'slide-in-right',  
        extras:{}  
    };  
    //若执行了显示动画初始化操作,则要覆盖默认配置

为什么初始化的参数是异步获取到的,而不是同步,如果是同步的话就导致下面的覆盖默认的操作的代码无法执行,因为这是同步执行的,执行时show是不存在的,就无法覆盖init时的操作了


    if($.options.show) {  

        defaultShow = $.extend(true, defaultShow, $.options.show);  
    }
2018-04-04 19:13 负责人:无 分享
已邀请:
Trust

Trust - 少说废话

新开窗口时的动画,是在 mui.openWindow 的方法中配置的,并不是在 init 中处理。

该问题目前已经被锁定, 无法添加新回复