fanly
fanly
  • 发布:2015-06-08 11:04
  • 更新:2015-06-08 16:58
  • 阅读:1502

关于不能下拉刷新的问题

分类:MUI

如题,谢谢~~~

2015-06-08 11:04 负责人:无 分享
已邀请:
DCloud_UNI_CHB

DCloud_UNI_CHB

是双webview吗?父页面是如何创建子页面的?

  • fanly (作者)

    跟官网提供的底栏5个tab切换一样

    mui.init({

    swipeBack: true,

    keyEventBind: {

    backbutton: true

    }

    });

    var subpages = [

    'tab-webview-subpage-home.html',

    'tab-webview-subpage-distance.html',

    'tab-webview-subpage-messages.html',

    'tab-webview-subpage-me.html'

    ];

    var subpage_style = {

    top: '46px',

    bottom: '56px'

    };


    //创建子页面,首个选项卡页面显示,其它均隐藏;  
    mui.plusReady(function () {
    var self = plus.webview.currentWebview();
    for (var i = 0; i < 4; i++) {
    if (i == 0) {
    var sub = plus.webview.create(subpages[i], subpages[i], {top: '0px', bottom: '56px'});
    self.append(sub);
    } else {
    var sub = plus.webview.create(subpages[i], subpages[i], subpage_style);
    sub.hide();
    self.append(sub);
    }
    }

    2015-06-08 11:15

  • DCloud_UNI_CHB

    要下拉的是哪个子webview?

    2015-06-08 11:18

  • fanly (作者)

    tab-webview-subpage-home.html

    2015-06-08 11:51

  • DCloud_UNI_CHB

    是下拉拖不动还是看不到下拉刷新提示?ab-webview-subpage-home.html的top位置是0px?

    2015-06-08 11:55

  • fanly (作者)

    是的 0px,我QQ号:249932635,我加你qq号吧

    2015-06-08 14:32

DCloud_UNI_CHB

DCloud_UNI_CHB

@fanly

分析了你的源码,是一个js中函数表达式声明顺序的问题,详细原理如下:

若采用函数表达式,则必须先声明,然后才能继续使用,如下方式是正确的:

var fun_1 = function(){  
   console.log("execute fun_1");  
}  
fun_1();

若顺序反过来,就会执行错误,如下:

//调用的时候,函数表达式尚未声明  
fun_1();  
var fun_1 = function(){  
   console.log("execute fun_1");  
}

但同样的代码,不使用函数表达式,而是直接声明的话,则不存在先后顺序,如下代码可以正常执行:

fun_1();          
function fun_1(){  
    console.log("execute fun_1");  
}

回归到你的问题上,两个方案:
1、将pullfresh变为正常函数声明,而不用函数表达式,例如:

function pullfresh() {  
    console.log('pullfresh');  
};

2、继续使用函数表达式,但位置提前到mui.init之前;

  • fanly (作者)

    按照你说的 做了修改 还是不行

    2015-06-08 17:24

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