美文网首页
常用方法封装

常用方法封装

作者: 嵩鼠 | 来源:发表于2020-05-07 17:35 被阅读0次
/*

*封装调用父页面方法 不需要调用方法则直接加载父页面

*@parme fun {Str} 父页面需要调用的方法  例: reset_fun("vm.loadQuestion1()") 即可调用父页面的方法

*/

function reset_fun(fun) {

    var father = plus.webview.currentWebview().opener();

    fun ? father.evalJS(fun) : location.reload();

}

/* 清空下拉加载的box盒子 */

function del_down_sroll_box() {

document.getElementById('down_load').style.opacity = 0;

}

/*

*打电话

* */

functioncall_phone(phoneNum){

//这个函数安卓有一次提示,苹果没有提示

varbtnArray=['拨打','取消'];

mui.confirm('是否拨打 '+phoneNum+' ?','提示',btnArray,function(e){

if(e.index==0){

plus.device.dial(phoneNum,false);

}

});

}

/*

* 功能:监听上拉刷新

* callback {Fun} 回调函数 需要进行的操作

* el {Str} 需要监听滑动的盒子 默认 id为body

*/

var PUBLIC_BODY = document.getElementsByTagName("body")[0];

PUBLIC_DOWN_SHOW_TXT = document.createElement('div'); //显示暂无数据

function up_reset(callback, el) {

if (!el) {

// el = document.getElementById("app");

el = PUBLIC_BODY

}

if (!callback) {

callback = function() {}

}

el.addEventListener('touchstart', refreshTouchStart);

el.addEventListener('touchmove', refreshTouchMove);

el.addEventListener('touchend', refreshTouchend);

var end_y, //移动开始后坐标

start_Y, //移动开始前坐标

buttonText, //显示松开后的信息

isReloadText = '↑ 松开刷新', //移动时未结束移动要显示的信息

up_down_txt_box; //获取要显示信息的节点

/* 开始滑动 */

function refreshTouchStart(e) {

var touch = e.changedTouches[0];

end_y = 0;

start_Y = touch.pageY; //获得当前按下点的纵坐标

}

/* 滑动中 */

function refreshTouchMove(e) {

//监听下滑的坐标,达到一定程度显示,正在刷新

var touch = e.touches[0];

end_y = touch.pageY - start_Y;

up_down_txt_box = document.getElementById("up_down_txt_box")

/* 滑动到一定范围 显示数据 */

if (end_y > 100) {

up_down_txt_box.style.display = 'block'

up_down_txt_box.className = 'up_down_txt_box h_20';

up_down_txt_box.innerHTML = isReloadText;

}

}

/* 滑动结束 */

function refreshTouchend(e) {

// 获取显示信息的盒子

up_down_txt_box = document.getElementById("up_down_txt_box");

// 下拉拉刷新状态

if (end_y > 150) {

// 将文字更新

up_down_txt_box.style.display = 'block'

isReloadText = '<img src="../../images/icon/loading.gif" height="10" /> 正在更新';

up_down_txt_box.innerHTML = isReloadText;

// 如果回调返回true了 表示操作完了

if (callback()) {

setTimeout(function() {

isReloadText = '<img src="../../images/lky/icon/audio_50.png" height="10" />  更新完成';

up_down_txt_box.innerHTML = isReloadText;

setTimeout(function() {

isReloadText = '↑ 松开刷新';

up_down_txt_box.innerHTML = '';

up_down_txt_box.classList = 'up_down_txt_box'

up_down_txt_box.style.display = 'none'

}, 1000)

}, 500)

}

return false

}

}

}

相关文章

网友评论

      本文标题:常用方法封装

      本文链接:https://www.haomeiwen.com/subject/nfzaghtx.html