api.openWin

打开window

若 window 已存在,则会把该 window 显示到最前面,如果 url 和之前的 url 有变化,或者 reload 为 true 时,页面会刷新,但是该 window 里面已经打开的 frame 等不会移除

若当前正在进行 openWin、closeWin 等带动画过渡的 window 操作,调用此方法会失效

openWin({params})

params

name:

  • 类型:字符串
  • 默认值:无
  • 描述:window 名字,不能为空字符串

url:

  • 类型:字符串
  • 默认值:无
  • 描述:页面地址,可以为本地文件路径,支持相对路径和绝对路径,以及 widget://、fs://等协议路径,也可以为远程地址

headers:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)请求头

useWKWebView:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)是否使用WKWebView来加载页面,只支持iOS8.0及以上系统。WKWebView是iOS8新出的WebKit库中的控件,相比于以前的UIWebView,在性能和功能等方面都有所提升。注意使用WKWebView后,localStorage可能不能和其它未使用WKWebView加载的页面通用,同时也不支持方法结果同步返回。

historyGestureEnabled:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)是否可以通过手势来进行历史记录前进后退,只在useWKWebView参数为true时有效。

pageParam:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)页面参数,新页面中可以通过 api.pageParam 获取

bounces:

  • 类型:布尔
  • 默认值:若在 config.xml 里面配置了pageBounce,则默认值为配置的值,否则为 false
  • 描述:(可选项)页面是否弹动

bgColor:

  • 类型:字符串
  • 默认值:若在 config.xml 里面配置了 windowBackground,则默认值为配置的值,否则透明
  • 描述:(可选项)背景色,支持图片和颜色,格式为 #fff、#ffffff、rgba(r,g,b,a)等,图片路径支持 fs://、widget://等 APICloud 自定义文件路径协议,同时支持相对路径

scrollToTop:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)当点击状态栏,页面是否滚动到顶部。若当前屏幕上不止一个页面的 scrollToTop 属性为 true,则所有的都不会起作用。只 iOS 有效

scrollEnabled:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)页面内容超出后是否可以滚动,只支持iOS

vScrollBarEnabled:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否显示垂直滚动条

hScrollBarEnabled:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否显示水平滚动条

scaleEnabled:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)页面是否可以缩放

slidBackEnabled:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否支持滑动返回。iOS7.0及以上系统中,在新打开的页面中向右滑动,可以返回到上一个页面,该字段只 iOS 有效

slidBackType:

  • 类型:字符串
  • 默认值:full
  • 描述:(可选项)当支持滑动返回时,设置手指在页面右滑的有效作用区域。取值范围(full:整个页面范围都可以右滑返回,edge:在页面左边缘右滑才可以返回),该字段只iOS有效

animation:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)动画参数,不传时使用默认动画
  • 内部字段:
{
    type:"none",                //动画类型(详见动画类型常量)
    subType:"from_right",       //动画子类型(详见动画子类型常量)
    duration:300                //动画过渡时间,默认300毫秒
}

type 取值范围:

none            //无动画效果
push            //新视图将旧视图推开
movein            //新视图移到旧视图上面
fade            //交叉淡化过渡(不支持过渡方向)
flip            //翻转效果
reveal            //将旧视图移开,显示下面的新视图
ripple            //滴水效果(不支持过渡方向)
curl            //向上翻一页
un_curl            //向下翻一页
suck            //收缩效果(不支持过渡方向)
cube            //立方体翻滚效果

subType 取值范围:

from_right        //从右边开始动画
from_left        //从左边开始动画
from_top        //从顶部开始动画
from_bottom        //从底部开始动画

showProgress:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)是否显示等待框,此参数即将废弃,使用 progress 参数代替。若传了 progress 参数,此参数将忽略

progress:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)页面加载进度配置信息,若不传则无加载进度效果
  • 内部字段:
{
    type:"",                //加载进度效果类型,默认值为 default,取值范围为 default|page,default 等同于 showProgress 参数效果;为 page 时,进度效果为仿浏览器类型,固定在页面的顶部
    title:"",               //type 为 default 时显示的加载框标题
    text:"",                //type 为 default 时显示的加载框内容
    color:""                //type 为 page 时进度条的颜色,默认值为 #45C01A,支持#FFF,#FFFFFF,rgb(255,255,255),rgba(255,255,255,1.0)等格式
}

delay:

  • 类型:数字
  • 默认值:0
  • 描述:(可选项)window 显示延迟时间,适用于将被打开的 window 中可能需要打开有耗时操作的模块时,可延迟 window 展示到屏幕的时间,保持 UI 的整体性

reload:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)页面已经打开时,是否重新加载页面,重新加载页面后 apiready 方法将会被执行

allowEdit:

  • 类型:布尔
  • 默认值:false
  • 描述:(可选项)是否允许长按页面时弹出选择菜单

softInputMode:

  • 类型:字符串
  • 默认值:auto
  • 描述:(可选项)当键盘弹出时,输入框被盖住时,当前页面的调整方式,;只iOS有效,Android请在 config.xml 里面配置并云编译使用
  • 取值范围:
    resize            //若键盘盖住输入框,页面会自动上移
    pan                //若键盘盖住输入框,页面不会自动上移auto            //默认值,由系统决定如何处理,iOS平台该字段等同于resize

softInputBarEnabled:

  • 类型:布尔
  • 默认值:true
  • 描述:(可选项)是否显示键盘上方的工具条。只支持iOS

customRefreshHeader:

  • 类型:字符串
  • 默认值:无
  • 描述:(可选项)设置使用自定义下拉刷新模块的名称,设置后可以使用 api.setCustomRefreshHeaderInfo 方法来使用自定义下拉刷新组件

示例代码

api.openWin({
    name: ‘page1‘,
    url: ‘./page1.html‘,
    pageParam: {
        name: ‘test‘
    }
});

补充说明

窗口操作

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

时间: 2025-01-01 23:47:25

api.openWin的相关文章

1、内嵌web ,web内用api对象

1. <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/> <meta name=&q

【apicloud问题解决记录】键盘弹出监听处理以及头部底部的黑色闪屏现象

http://blog.csdn.net/kongjiea/article/details/46545351 移动端解决fixed和input获取焦点软键盘弹出影响定位的问题 使用apicloud开发中并不存在这个问题,input进行焦点获取,页面会自动压缩 apicloud,使用api.openWin()打开win框架后,如果bounces:true会出现向下拉和向上拉黑屏和闪屏现象. 打开openWin({bounces:false}),再在win里面打开frame框架 以下面新浪新闻页为例

pageParam要求传个JSON对象的方法

pageParam要求传个JSON对象,使用方式:api.openWin({name: 'page1',url: 'page1.html',pageParam: {x: '1000',y: '2000'z: '3000'}});然后在page1.html的apiready中这样获取:apiready = function(){var x = api.pageParam.x;var y = api.pageParam.y;var z = api.pageParam.z;}

第四次作业——结对编程

题目:安卓点餐软件 需求:良好的UI设计,可以实现点餐功能.软件包括一些常见的功能,如语音识别.二维码扫描,能够对云数据库进行增删改查. 代码:(部分代码) 1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="maximum-scale=1.0,minimum-scal

获取URL值带参数跳转

//要跳转界面 api.openWin({ name: 'PayOrder', url: 'PayOrder.html?id=2', pageParam:{name:pr} }); //跳转后的界面 var url = location.search; //获取url中"?"符后的字串 var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs

[技术分享] 新手入门教程,从0开始入手APIcloud(一)

首先欢迎加入APIcloud,很多朋友进来后一头雾水,不知道从哪下手,今天就做个详细的流程出来. 要想用APIcloud开发一套APP,前提得熟悉HTML .JS .CSS.如果再熟悉点PHP ,JSP就更好了,可以实现与自己的服务器对接. 第一步:注册账号,下载Studio开发工具. 打开IDE后依次---文件---新建---创建APIcloud项目.创建完成后在左侧[我的APP项目]里面会显示新建的项目,同时登录到网站控制台里面也会看到刚创建的项目.如下图 左侧我的APP项目里面会显示刚创建

H5混合开发APP配置以及第一个工程--博客园老牛大讲堂

前段时间有人问我怎样用H5开发app,我恰好知道就把步骤粘出来,有不懂的地方给我留言,我再修改.--博客园老牛大讲堂 思想:首先用Hbuilder开发工程,把自己的工程粘贴到APICloud的工程里面.然后用网上的APICloud的内容打包内容. 环境:Hbuilder,夜神模拟器,APICloud开发工具. 提示:因为APICloud因为提示功能不好,所以建议如果想开发就用Hbuilder开发.开发完就把css,js,img粘里面就行了. 第一.首先下载一个APICloud开发环境(APICl

APICloud笔记

(1)改变手机顶部状态栏字体.图标颜色 api.setStatusBarStyle({style:'light'});//light白色,dark黑色(2)页面跳转传参 例: api.openWin({ name: 'compileRegion', url: './compileRegion.html', reload:true,//此参数如果不传,导致页面数据不更新 pageParam:{ companyID:thar.company.companyID } }); //在新页面获取参数:ap

HybridStart混合应用开发框架

转自我的博客,原文地址:http://refined-x.com/2017/06/26/%E5%9F%BA%E4%BA%8EAPICloud%E7%9A%84%E6%B7%B7%E5%90%88%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E6%A1%86%E6%9E%B6/ HybridStart提供什么 开发模式 如果是跟我一样之前从未接触过APP开发的前端,我认为首先需要知道的是,APP不同于web的地方是需要很多初始化操作,比如判断是否已登录.数据预取.检查更