微学网

热门关键词:   as  thinkphp  ecshop  www.ymwears.cn  商务通  xxx
热门: ASP.NET PHP编程 ASP编程 JSP编程 Python

APICloud 对象之 Method

发布时间:2020-05-16 来源:未知 点击:
//openWin 打开window 若 window 已存在,则会把该 window 显示到最前面
api.openWin({
    name: 'page1',
    url: './page1.html',
    pageParam: {
        name: 'test'
    }
});
//closeWin  关闭 window
//关闭当前window,使用默认动画
api.closeWin();

//关闭指定window,若待关闭的window不在最上面,则无动画
api.closeWin({
    name: 'page1'
});

//closeToWin 关闭到指定 window,最上面显示的 window 到指定 name 的 window 间的所有 window 都会被关闭
api.closeToWin({
    name: 'root'
});

//setWinAttr  设置 window 属性
api.setWinAttr({
    bounces: true,
    bgColor: '#fff',
    vScrollBarEnabled: true,
    hScrollBarEnabled: true,
    scaleEnabled: true,
    slidBackEnabled: true
});

//openFrame 打开 frame   此方法对 frameGroup 里面的 frame 不起作用
api.openFrame({
    name: 'page2',
    url: './page2.html',
    rect: {
        x: 0,
        y: 0,
        w: 320,
        h: 480
    },
    pageParam: {
        name: 'test'
    },
    bounces: true,
    bgColor: 'rgba(0,0,0,0)',
    vScrollBarEnabled: true,
    hScrollBarEnabled: true
});

//closeFrame 关闭frame
api.closeFrame({
    name: 'page2'
});

//setFrameAttr  设置frame属性
api.setFrameAttr({
    name: 'page2',
    rect: {
        x: 0,
        y: 0,
        w: 320,
        h: 480
    },
    bounces: true,
    bgColor: '#fff',
    vScrollBarEnabled: true,
    hScrollBarEnabled: true
});

//bringFrameToFront 调整 frame 到前面
api.bringFrameToFront({
    from: 'page1',
    to: 'page2'
});
//sendFrameToBack 调整 frame 到后面
api.sendFrameToBack({
    from: 'page1',
    to: 'page2'
});

//setFrameClient  设置指定 frame 的页面加载监听,仅在 window 中调用生效,可以对多个 frame 进行监听。
api.setFrameClient({
    frameName: 'webpage'
}, function(ret, err) {
    switch (ret.state) {
        case 0:  // 开始加载
            break;
        case 1: //  加载进度发生变化
            break; 
        case 2: //结束加载
            break;
        case 3: //title发生变化
            break;
        case 4: //URL发生变化
            break;
        default:
            break;
    }
});

// animation   frame 动画,支持平移,缩放,旋转和透明度变化 仅支持 frame,不支持 window 以及 frameGroup 里面的 frame
api.animation({
    name: 'page1',
    delay: 1000,
    duration: 3000,
    curve: 'ease_in',
    repeatCount: 2,
    autoreverse: true,
    alpha: 0.6,
    translation: {
        x: 0,
        y: 100,
        z: 0
    },
    scale: {
        x: 1.2,
        y: 1,
        z: 1
    },
    rotation: {
        degree: 45,
        x: 0,
        y: 0,
        z: 1
    }
}, function(ret, err) {
    alert('动画结束');
});

//openFrameGroup  打开 frame 组frame 组打开后,当前页面加载完成后,页面会预加载后面指定个数页面
api.openFrameGroup({
    name: 'group1',
    background: '#fff',
    scrollEnabled: false,
    rect: {
        x: 0,
        y: 0,
        w: 'auto',
        h: 'auto'
    },
    index: 0,
    frames: [{
        name: 'frame1',
        url: 'frame1.html',
        bgColor: '#fff'
    }, {
        name: 'frame2',
        url: 'frame2.html',
        bgColor: '#fff'
    }]
}, function(ret, err) {
    var index = ret.index;
});

//closeFrameGroup  关闭frame组
api.closeFrameGroup({
    name: 'group1'
});

//setFrameGroupAttr  设置 frame 组属性
api.setFrameGroupAttr({
    name: 'group1',
    hidden: true
});
//****
//setFrameGroupIndex  设置 frame 组当前可见 frame
api.setFrameGroupIndex({
    name: 'group1',
    index: 2,
    scroll: true
});

//openSlidLayout  打开侧滑式布局
api.openSlidLayout({
    type: 'all',
    leftEdge: 80,
    rightEdge: 60,
    fixedPane: {
        name: 'win1',
        url: 'win1.html',
        bgColor: '#fff',
        bounces: true,
        vScrollBarEnabled: true,
        hScrollBarEnabled: false
    },
    slidPane: {
        name: 'win2',
        url: 'win2.html',
        bgColor: '#fff',
        bounces: true,
        vScrollBarEnabled: true,
        hScrollBarEnabled: false
    }
}, function(ret, err) {

});

// openSlidPane  向左或右进行侧滑
api.openSlidPane({
    type: 'left'
});

//closeSlidPane 当 SlidPane 处于左或右侧滑状态时,将其收起
api.closeSlidPane();

//lockSlidPane  锁住 SlidPane,使其不能跟随手指滑动而移动
api.lockSlidPane();

//unlockSlidPane  解锁 SlidPane,使其能跟随手指滑动而移动
api.unlockSlidPane();

//openDrawerLayout 打开一个抽屉式侧滑 window,可以从当前 window 的左右边缘滑动拉出侧滑 window。
api.openDrawerLayout({
    name: 'main',
    url: './main.html',
    animation: {
        type: 'none'
    },
    leftPane: {
        name: 'leftPane',
        url: 'leftPane.html'
    }
});

//openDrawerPane 打开抽屉式侧滑Pane 
api.openDrawerPane({
    type: 'left'
});

//execScript  在指定 window 或者 frame 中执行脚本,对于 frameGroup 里面的 frame 也有效
//在名为winName的window中执行jsfun脚本
var jsfun = 'funcGoto();';
api.execScript({
    name: 'winName',
    script: jsfun
});


//在名为winName的window中找到
//名为frmName的frame,并在该frame中执行jsfun脚本
var jsfun = 'funcGoto();';
api.execScript({
    name: 'winName',
    frameName: 'frmName',
    script: jsfun
});


//在当前window中找到
//名为frmName的frame,并在该frame中执行jsfun脚本
var jsfun = 'funcGoto();';
api.execScript({
    frameName: 'frmName',
    script: jsfun
});

//historyBack 历史记录后退一页
api.historyBack({
    frameName: 'detail'
}, function(ret, err) {
    if (!ret.status) {
        api.closeWin();
    }
});

//historyForward 历史记录前进一页
api.historyForward({
    frameName: 'detail'
}, function(ret, err) {
    if (!ret.status) {

    }
});

//pageUp  页面向上滚动一页
api.pageUp(function(ret, err) {
    if (!ret.scrolled) {
        //已经滚动到顶部
    }
});

//pageDown  页面向下滚动一页
api.pageDown(function(ret, err) {
    if (!ret.scrolled) {
        //已经滚动到底部
    }
});

//removeLaunchView 移除启动图。若 config.xml 里面配置 autoLaunch 为 false,则启动图不会自动消失,直到调用此方法移除。
api.removeLaunchView({
    animation: {
        type: 'fade',
        duration: 500
    }
});

//ajax 跨域异步请求,支持文件上传
api.ajax({
    url: 'http://192.168.1.101:3101/upLoad',
    method: 'post',
    data: {
        values: {
            name: 'haha'
        },
        files: {
            file: 'fs://a.gif'
        }
    }
}, function(ret, err) {
    if (ret) {
        api.alert({ msg: JSON.stringify(ret) });
    } else {
        api.alert({ msg: JSON.stringify(err) });
    }
});

//download  下载文件
api.download({
    url: url,
    savePath: 'fs://test.rar',
    report: true,
    cache: true,
    allowResume: true
}, function(ret, err) {
    if (ret.state == 1) {
        //下载成功
    } else {

    }
});

//cancelDownload  取消文件下载 
api.cancelDownload({
    url: url
});

//imageCache  图片缓存
api.imageCache({
    url: 'http://a.hiphotos.baidu.com/image/w%3D400/sign=2abe1c77d4ca7bcb7d7bc62f8e086b3f/64380cd7912397ddf9f4bdb05a82b2b7d1a287f0.jpg'
}, function(ret, err) {
    var url = ret.url;
});

//readFile 读取文本文件内容,只支持utf-8编码文本类型文件
//异步返回结果:
api.readFile({
    path: 'fs://a.txt'
}, function(ret, err) {
    if (ret.status) {
        var data = ret.data;
    } else {
        alert(err.msg);
    }
});

//同步返回结果:
var data = api.readFile({
    sync: true,
    path: 'fs://a.txt'
});

//writeFile  写入内容到文本文件 
api.writeFile({
    path: 'fs://a.txt',
    data: 'writeFile测试内容'
}, function(ret, err) {
    if (ret.status) {
        //成功
    } else {

    }
});

//clearCache 清除缓存,包括下载的文件、拍照临时文件、网页缓存文件等,清除时可能需要消耗一定时间。

api.clearCache(function() {
    api.toast({
        msg: '清除完成'
    });
});

//getCacheSize 获取缓存占用空间大小,缓存包括下载的缓存文件、拍照临时文件以及网页缓存文件等,计算可能需要花费一些时间
//异步返回结果:
api.getCacheSize(function(ret) {
    var size = ret.size;
});

//同步返回结果:
var size = api.getCacheSize({
    sync: true
});


//getFreeDiskSpace 获取剩余存储空间大小
//异步返回结果:
api.getFreeDiskSpace(function(ret, err) {
    var size = ret.size;
});

//同步返回结果:
var size = api.getFreeDiskSpace({
    sync: true
});

//******
//addEventListener  监听事件,支持系统事件和自定义事件
//如监听网络连接事件
api.addEventListener({
    name: 'online'
}, function(ret, err) {
    alert('已连接网络');
});


//removeEventListener 移除事件监听
api.removeEventListener({
    name: 'online'
});

//******
//sendEvent 将任意一个自定义事件广播出去,该事件可在任意页面通过 addEventListener 监听收到。
api.sendEvent({
    name: 'myEvent',
    extra: {
        key1: 'value1',
        key2: 'value2'
    }
});

//html页面a:
api.addEventListener({
    name: 'myEvent'
}, function(ret, err) {
    alert(JSON.stringify(ret.value));
});

//html页面b:
api.addEventListener({
    name: 'myEvent'
}, function(ret, err) {
    alert(JSON.stringify(ret.value));
});

//a、b页面都将收到 myEvent 事件
//*************

//*****
//notification 向用户发出震动、声音提示、灯光闪烁、状态栏消息等通知,以及闹钟功能
api.notification({
    notify: {
        content: '闹钟'
    },
    alarm: {
        hour: 7,
        minutes: 30,
        daysOfWeek: [2, 3, 4, 5, 6]
    }
}, function(ret, err) {
    var id = ret.id;
});

//*******
//startLocation 调用系统自带定位功能,开始定位
api.startLocation({
    accuracy: '100m',
    filter: 1,
    autoStop: true
}, function(ret, err){
    if(ret && ret.status){
         //获取位置信息成功
    }else{
         alert(JSON.stringify(err));
    }
});

//stopLocation 停止定位

api.stopLocation();

//getLocation 获取位置信息,获取成功后自动停止获取。
api.getLocation(function(ret, err) {
    if (ret && ret.status) {
        //获取位置信息成功
    } else {
        alert(JSON.stringify(err));
    }
});

//startSensor 开启传感器
api.startSensor({
    type: 'accelerometer'
}, function(ret, err) {
    if (ret && ret.status) {

    } else {

    }
});

//call 拨打电话或进行faceTime
api.call({
    type: 'tel_prompt',
    number: '10086'
});

//sms 调用系统短信界面发送短信,或者后台直接发送短信
api.sms({
    numbers: ['10086'],
    text: '测试短信'
}, function(ret, err) {
    if (ret && ret.status) {
        //已发送
    } else {
        //发送失败
    }
});
//mail 发送邮件
api.mail({
    recipients: ['[email protected]'],
    subject: '邮件测试',
    body: '这是一封测试用的邮件',
    attachments: ['widget://a.txt']
}, function(ret, err) {
    if (ret && ret.status) {
        //已发送
    } else {

    }
});

//openContacts 在应用内打开系统通讯录界面选择联系人
api.openContacts(function(ret, err) {
    if (ret && ret.status) {
        var name = ret.name;
        var phone = ret.phone;
    } else {

    }
});

//setFullScreen 设置是否全屏
api.setFullScreen({
    fullScreen: true
});

//setStatusBarStyle 设置状态栏样式为白色(适用于深色背景)或黑色(适用于浅色背景),以及设置状态栏背景颜色
api.setStatusBarStyle({
    style: 'light'
});

//setKeepScreenOn   设置是否禁止屏幕休眠
api.setKeepScreenOn({
    keepOn: true
});

//toLauncher   回到系统桌面
api.toLauncher();

这就是微学网-程序员之家为你提供的"APICloud 对象之 Method"希望对你有所帮助.本文来自网络,转载请注明出处:http://www.weixuecn.cn/article/14036.html
网络编程 | 前端制作 | 数据库 | CMS教程 | 脚本编程 | 框架 | 服务器 | 微信开发 | APP开发 |

凡本网站转载的文章、图片等资料的版权归版权所有人所有,因无法和版权所有者一一联系,如果本网站选取的文/图威胁到您的权益,请您及时和本网站联系。 我们会在第一时间内采取措施,避免给双方造 成不必要的损失。
© 2015-2018 微学网 版权所有,并保留所有权利。 备案号:粤ICP备09051474号-1

电脑版 | 移动版