国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

HBuilder mui 自定義事件

2024-04-25 20:34:26
字體:
來源:轉載
供稿:網友

用戶開發應用中會大量使用事件功能。除了瀏覽器內置的事件及mui框架內置的事件(比如手勢事件)外,mui同時支持用戶觸發和綁定自定義事件。通過自定義事件,用戶可以輕松實現頁面間數據傳遞。

監聽自定義事件

添加自定義事件監聽操作和標準js事件監聽類似,可直接通過window對象添加,如下:

window.addEventListener('customEvent',function(event){

//通過event.detail可獲得傳遞過來的參數內容

....

});

觸發自定義事件

通過mui.fire方法可觸發目標窗口的自定義事件:

mui.fire(targetPage,'customEvent',{

//自定義事件參數

});

示例:假設如下場景:從新聞列表頁面進入新聞詳情頁面,新聞詳情頁面為共用頁面,通過傳遞新聞ID通知詳情頁面需要顯示具體哪個新聞,詳情頁面再動態向服務器請求數據,mui要實現類似需求可通過如下步驟實現:

在列表頁面中預加載詳情頁面(假設為detail.html)

列表頁面在點擊新聞標題時,首先,獲得該新聞id,觸發詳情頁面的newsId事件,并將新聞id作為事件參數傳遞過去;然后再打開詳情頁面;

詳情頁面監聽newsId自定義事件

列表頁面代碼如下:

//初始化預加載詳情頁面

mui.init({

preloadPages:[{

id:'detail.html',

url:'detail.html'

}

]

});

var detailPage = null;

//添加列表項的點擊事件

mui('.mui-content').on('tap', 'a', function(e) {

var id = this.getAttribute('id');

//獲得詳情頁面

if(!detailPage){

detailPage = plus.webview.getWebviewById('detail.html');

}

//觸發詳情頁面的newsId事件

mui.fire(detailPage,'newsId',{

id:id

});

//打開詳情頁面

mui.openWindow({

id:'detail.html'

});

});

詳情頁面代碼如下:

//添加newId自定義事件監聽

window.addEventListener('newsId',function(event){

//獲得事件參數

var id = event.detail.id;

//根據id向服務器請求新聞詳情

.....

}); 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 紫金县| 新余市| 大邑县| 石柱| 盈江县| 玉树县| 雅江县| 陕西省| 宜黄县| 津南区| 西丰县| 祥云县| 秦皇岛市| 宁都县| 双桥区| 新余市| 三台县| 六枝特区| 佛坪县| 长宁区| 榆中县| 六盘水市| 宜阳县| 辛集市| 开化县| 彭山县| 中超| 乐清市| 江陵县| 湛江市| 霍林郭勒市| 武鸣县| 青海省| 台北市| 大埔区| 五河县| 萨嘎县| 页游| 石门县| 盐亭县| 天门市|