openFrame

2022-06-13 10:30 更新

打開(kāi) frame

若 frame 已存在,則會(huì)把該窗口顯示到最前面并顯示,如果 url 和之前的 url 有變化,或者 reload 為 true 時(shí),頁(yè)面會(huì)刷新

此方法對(duì) frameGroup 里面的 frame 不起作用

openFrame({params})

params

name:

  • 類型:字符串
  • 默認(rèn)值:無(wú)
  • 描述:frame 名字

url:

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

data:

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

headers:

  • 類型:JSON 對(duì)象
  • 默認(rèn)值:無(wú)
  • 描述:(可選項(xiàng))請(qǐng)求頭

avm:

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

useWKWebView:

  • 類型:布爾
  • 默認(rèn)值:false
  • 描述:(可選項(xiàng))是否使用WKWebView來(lái)加載頁(yè)面。參考WKWebView介紹。

allowAccessFromFile:

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

historyGestureEnabled:

  • 類型:布爾
  • 默認(rèn)值:false
  • 描述:(可選項(xiàng))是否可以通過(guò)手勢(shì)來(lái)進(jìn)行歷史記錄前進(jìn)后退,只在useWKWebView參數(shù)為true時(shí)有效。

syncCookie:

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

pageParam:

  • 類型:JSON 對(duì)象
  • 默認(rèn)值:無(wú)
  • 描述:(可選項(xiàng))頁(yè)面參數(shù),在新頁(yè)面通過(guò) api.pageParam 獲取

bounces:

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

bgColor:

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

scrollToTop:

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

scrollEnabled:

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

vScrollBarEnabled:

  • 類型:布爾
  • 默認(rèn)值:true
  • 描述:(可選項(xiàng))是否顯示垂直滾動(dòng)條

hScrollBarEnabled:

  • 類型:布爾
  • 默認(rèn)值:true
  • 描述:(可選項(xiàng))是否顯示水平滾動(dòng)條

scaleEnabled:

  • 類型:布爾
  • 默認(rèn)值:false
  • 描述:(可選項(xiàng))頁(yè)面是否可以縮放

fixedOn:

  • 類型:字符串
  • 默認(rèn)值:若當(dāng)前在tabLayout組件中為ui_layout,否則為ui_window
  • 描述:(可選項(xiàng))frame所要添加到的目標(biāo)頁(yè)面。
  • 取值范圍:

ui_window    //頁(yè)面添加到當(dāng)前window中。若當(dāng)前在tabLayout組件中,頁(yè)面只能添加到navigationBar和tabBar之間的區(qū)域,無(wú)法覆蓋在navigationBar、tabBar之上。
ui_layout    //頁(yè)面添加到當(dāng)前tabLayout中。此時(shí)頁(yè)面能夠添加到tabLayout中任意位置,能夠覆蓋在navigationBar、tabBar之上,只在tabLayout組件中有效。

rect:

  • 類型:JSON 對(duì)象
  • 默認(rèn)值:充滿整個(gè)父頁(yè)面
  • 描述:(可選項(xiàng))設(shè)置頁(yè)面的位置和大小。如果要固定寬高則使用x、y、w、h等參數(shù);如果要自適應(yīng)狀態(tài)欄高度變化、橫豎屏切換等,則需要使用margin相關(guān)參數(shù),不能使用w、h固定寬高。推薦使用margin相關(guān)參數(shù)來(lái)布局。
  • 內(nèi)部字段:

{
    x:,             //左上角x坐標(biāo),數(shù)字類型
    y:,             //左上角y坐標(biāo),數(shù)字類型
    w:,             //寬度,若傳'auto',頁(yè)面從x位置開(kāi)始自動(dòng)充滿父頁(yè)面寬度,數(shù)字或固定值'auto'
    h:,             //高度,若傳'auto',頁(yè)面從y位置開(kāi)始自動(dòng)充滿父頁(yè)面高度,數(shù)字或固定值'auto'


    marginLeft:,    //相對(duì)父頁(yè)面左外邊距的距離,數(shù)字類型
    marginTop:,     //相對(duì)父頁(yè)面上外邊距的距離,數(shù)字類型
    marginBottom:,  //相對(duì)父頁(yè)面下外邊距的距離,數(shù)字類型
    marginRight:    //相對(duì)父頁(yè)面右外邊距的距離,數(shù)字類型
}

progress:

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

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

reload:

  • 類型:布爾
  • 默認(rèn)值:false
  • 描述:(可選項(xiàng))頁(yè)面已經(jīng)打開(kāi)時(shí),是否重新加載頁(yè)面

allowEdit:

  • 類型:布爾
  • 默認(rèn)值:false
  • 描述:(可選項(xiàng))是否允許長(zhǎng)按頁(yè)面時(shí)彈出選擇菜單

softInputMode:

  • 類型:字符串
  • 默認(rèn)值:auto
  • 描述:(可選項(xiàng))當(dāng)鍵盤(pán)彈出時(shí),輸入框被蓋住時(shí),當(dāng)前頁(yè)面的調(diào)整方式,只iOS有效,Android請(qǐng)?jiān)?config.xml 里面配置并云編譯使用

softInputDismissMode:

  • 類型:字符串?dāng)?shù)組
  • 默認(rèn)值:['tap']
  • 描述:(可選項(xiàng))收起鍵盤(pán)的方式,只iOS有效。
  • 取值范圍:

tap              //點(diǎn)擊頁(yè)面收起鍵盤(pán),可以和drag或interactive同時(shí)使用
drag             //拖拽頁(yè)面時(shí)收起鍵盤(pán),可以和tap同時(shí)使用
interactive      //在鍵盤(pán)和頁(yè)面交界處上下滑動(dòng)收起鍵盤(pán),可以和tap同時(shí)使用

softInputBarEnabled:

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

overScrollMode:

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

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

dragAndDrop:

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

animation:

  • 類型:JSON 對(duì)象
  • 默認(rèn)值:無(wú)
  • 描述:(可選項(xiàng))動(dòng)畫(huà)參數(shù),不傳時(shí)無(wú)動(dòng)畫(huà)
  • 內(nèi)部字段:

{
    type:"none",                //動(dòng)畫(huà)類型(詳見(jiàn)動(dòng)畫(huà)類型常量)
    subType:"from_right",       //動(dòng)畫(huà)子類型(詳見(jiàn)動(dòng)畫(huà)子類型常量)
    duration:300                //動(dòng)畫(huà)過(guò)渡時(shí)間,默認(rèn)300毫秒
}


type 取值范圍:


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


subType 取值范圍:


from_right      //從右邊開(kāi)始動(dòng)畫(huà)
from_left       //從左邊開(kāi)始動(dòng)畫(huà)
from_top        //從頂部開(kāi)始動(dòng)畫(huà)
from_bottom     //從底部開(kāi)始動(dòng)畫(huà)

defaultRefreshHeader:

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

customRefreshHeader:

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

示例代碼

api.openFrame({
    name: 'page2',
    url: './page2.html',
    rect: {
        x: 0,
        y: 0,
        w: 'auto',
        h: 'auto'
    },
    pageParam: {
        name: 'test'
    }
});

可用性

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

可提供的1.0.0及更高版本

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)