openWin

2022-06-13 10:26 更新

打開window

若window已存在,則會把該window顯示到最前面,同時若url有變化或者reload參數(shù)為true時,頁面會重新加載。

openWin({params})

params

name:

  • 類型:字符串
  • 默認值:無
  • 描述:window名字

url:

  • 類型:字符串
  • 默認值:無
  • 描述:頁面地址,可以為本地文件路徑,支持相對路徑和絕對路徑,以及 widget://、fs://等協(xié)議路徑,也可以為遠程地址。 當data參數(shù)不為空時,url將做為baseUrl,data中的html引用的資源文件根路徑以該url為基礎(chǔ)。

data:

  • 類型:字符串
  • 默認值:無
  • 描述:(可選項)頁面加載的數(shù)據(jù)內(nèi)容,可以為html片段或者整張html文件的數(shù)據(jù)

headers:

  • 類型:JSON 對象
  • 默認值:無
  • 描述:(可選項)請求頭

singleInstance:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)設(shè)置該window是否為單例對象。若設(shè)置為單例對象,當調(diào)用closeWin方法關(guān)閉時,window將只是從屏幕移除而不會被銷毀,下次再打開時將直接使用已存在的window,而不會再重新創(chuàng)建。

avm:

  • 類型:布爾
  • 默認值:若在config.xml里面配置了avm字段,則默認值為配置的值,否則為false
  • 描述:(可選項)是否使用原生引擎來加載頁面,頁面必須是使用avm框架語法生成。

useWKWebView:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)是否使用WKWebView來加載頁面。參考WKWebView介紹。

allowAccessFromFile:

  • 類型:布爾
  • 默認值:全局加密下為false
  • 描述:(可選項)設(shè)置是否可以在本地頁面中訪問本地或遠程資源,為保證代碼安全,在開啟全局加密情況下默認禁止訪問。只在useWKWebView參數(shù)為true時有效。

historyGestureEnabled:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)是否可以通過手勢來進行歷史記錄前進后退,只在useWKWebView參數(shù)為true時有效。

syncCookie:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)是否自動同步WKWebView外部如ajax產(chǎn)生的Cookie到WKWebView中,只在useWKWebView參數(shù)為true時有效。

pageParam:

  • 類型:JSON 對象
  • 默認值:無
  • 描述:(可選項)頁面參數(shù),新頁面中可以通過 api.pageParam 獲取

bounces:

  • 類型:布爾
  • 默認值:若在 config.xml 里面配置了pageBounce,則默認值為配置的值,否則為 false
  • 描述:(可選項)頁面是否彈動。注意如果頁面使用了上拉、下拉刷新等功能,該屬性可能會被刷新組件重新設(shè)置。

bgColor:

  • 類型:字符串
  • 默認值:若在 config.xml 里面配置了 windowBackground,則默認值為配置的值,否則透明
  • 描述:(可選項)背景色,支持圖片和顏色,格式為 #fff、#ffffff、rgba(r,g,b,a)等,圖片路徑支持 fs://、widget://等 APICloud 自定義文件路徑協(xié)議,同時支持相對路徑

scrollToTop:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)當點擊狀態(tài)欄,頁面是否滾動到頂部。若當前屏幕上不止一個頁面的 scrollToTop 屬性為 true,則所有的都不會起作用。只 iOS 有效

scrollEnabled:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)頁面內(nèi)容超出后是否可以滾動,只支持iOS

vScrollBarEnabled:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)是否顯示垂直滾動條

hScrollBarEnabled:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)是否顯示水平滾動條

scaleEnabled:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)頁面是否可以縮放

hideTopBar:

  • 類型:布爾
  • 默認值:無
  • 描述:(可選項)是否隱藏原生navigationBar控件,該字段只 iOS 有效

hideBottomBar:

  • 類型:布爾
  • 默認值:無
  • 描述:(可選項)是否隱藏原生tabBar控件,該字段只 iOS 有效

slidBackEnabled:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)是否支持滑動返回。iOS7.0及以上系統(tǒng)中,在新打開的頁面中向右滑動,可以返回到上一個頁面,該字段只 iOS 有效

slidBackType:

  • 類型:字符串
  • 默認值:full
  • 描述:(可選項)當支持滑動返回時,設(shè)置手指在頁面右滑的有效作用區(qū)域。取值范圍(full:整個頁面范圍都可以右滑返回,edge:在頁面左邊緣右滑才可以返回),該字段只iOS有效

animation:

  • 類型:JSON 對象
  • 默認值:無
  • 描述:(可選項)動畫參數(shù),不傳時使用默認動畫
  • 內(nèi)部字段:

{
    type:"none",                //動畫類型(詳見動畫類型常量)
    subType:"from_right",       //動畫子類型(詳見動畫子類型常量)
    duration:300                //動畫過渡時間,默認300毫秒
}


type 取值范圍:


none            //無動畫效果
push            //新視圖將舊視圖推開
movein          //新視圖移到舊視圖上面
fade            //交叉淡化過渡(不支持過渡方向)
flip            //翻轉(zhuǎn)效果
reveal          //將舊視圖移開,顯示下面的新視圖
ripple          //滴水效果(不支持過渡方向)
curl            //向上翻一頁
un_curl         //向下翻一頁
suck            //收縮效果(不支持過渡方向)
cube            //立方體翻滾效果


subType 取值范圍:


from_right      //從右邊開始動畫
from_left       //從左邊開始動畫
from_top        //從頂部開始動畫
from_bottom     //從底部開始動畫


(Android系統(tǒng)flip,ripple,curl,un_curl,suck,cube 類型不支持)

progress:

  • 類型:JSON 對象
  • 默認值:無
  • 描述:(可選項)頁面加載進度配置信息,若不傳則無加載進度效果
  • 內(nèi)部字段:

{
    type:            //加載進度效果類型,默認值為 default,取值范圍為 default|page,為 page 時,進度效果為仿瀏覽器類型,固定在頁面的頂部
    title:           //type 為 default 時顯示的加載框標題,字符串類型
    text:            //type 為 default 時顯示的加載框內(nèi)容,字符串類型
    color:           //type 為 page 時進度條的顏色,默認值為 #45C01A,支持#FFF,#FFFFFF,rgb(255,255,255),rgba(255,255,255,1.0)等格式
    height:          //type 為 page 時進度條高度,默認值為3,數(shù)字類型
}

delay:

  • 類型:數(shù)字
  • 默認值:0
  • 描述:(可選項)window 顯示延遲時間,適用于將被打開的 window 中可能需要打開有耗時操作的模塊時,可延遲 window 展示到屏幕的時間,保持 UI 的整體性

reload:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)頁面已經(jīng)打開時,是否重新加載頁面,重新加載頁面后 apiready 方法將會被執(zhí)行

allowEdit:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)是否允許長按頁面時彈出選擇菜單

softInputMode:

  • 類型:字符串
  • 默認值:auto
  • 描述:(可選項)當鍵盤彈出時,輸入框被蓋住時,當前頁面的調(diào)整方式,只iOS有效,Android請在 config.xml 里面配置并云編譯使用
  • 取值范圍:

resize            //若鍵盤蓋住輸入框,頁面會自動上移
pan               //若鍵盤蓋住輸入框,頁面不會自動上移
auto              //默認值,由系統(tǒng)決定如何處理,iOS平臺該字段等同于resize

softInputDismissMode:

  • 類型:字符串數(shù)組
  • 默認值:['tap']
  • 描述:(可選項)收起鍵盤的方式,只iOS有效。
  • 取值范圍:

tap               //點擊頁面收起鍵盤,可以和drag或interactive同時使用
drag              //拖拽頁面時收起鍵盤,可以和tap同時使用
interactive       //在鍵盤和頁面交界處上下滑動收起鍵盤,可以和tap同時使用

softInputBarEnabled:

  • 類型:布爾
  • 默認值:true
  • 描述:(可選項)是否顯示鍵盤上方的工具條。只支持iOS

overScrollMode:

  • 類型:字符串
  • 默認值:never
  • 描述:(可選項)設(shè)置頁面滾動到頭部或尾部時,顯示回彈陰影效果的模式,僅Android有效。
  • 取值范圍:

never            //永遠不顯示
always           //總是顯示
scrolls          //只有當頁面內(nèi)容超出設(shè)備屏幕大小,發(fā)生滾動行為時顯示,建議設(shè)置為該模式。

dragAndDrop:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)是否允許iOS 11及以上系統(tǒng)中頁面元素默認的拖拽行為。只支持iOS

hideHomeIndicator:

  • 類型:布爾
  • 默認值:false
  • 描述:(可選項)是否隱藏虛擬home鍵。設(shè)置為true時,虛擬home鍵會在屏幕沒有觸摸操作時自動隱藏,觸摸后又會顯示出來。只支持iOS

defaultRefreshHeader:

  • 類型:字符串
  • 默認值:pull
  • 描述:(可選項)設(shè)置使用默認下拉刷新類型,取值范圍:pull、swipe

customRefreshHeader:

  • 類型:字符串
  • 默認值:無
  • 描述:(可選項)設(shè)置使用自定義下拉刷新模塊的名稱,設(shè)置后可以使用 api.setCustomRefreshHeaderInfo 方法來使用自定義下拉刷新組件

示例代碼

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

補充說明

窗口操作

可用性

iOS系統(tǒng),Android系統(tǒng)

可提供的1.0.0及更高版本

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號