今天整理MUI移动端页面跳转的几种方法和遇到的不同的坑
先上设置button、label和a标签的代码:
<body>
<button type="button" class="mui-btn"
οnclick="jumpToDetailView()"id="jumpToDetail">查看企业详情</button>
<div class="div">
<label class="test" id="test">this is a test label</label>
<a class="atest" id="at">this is a test</a>
</div>
</body>
跳转方法一:button类型使用οnclick='',函数跳转
function jumpToDetailView(){
alert('123');
mui.openWindow({
url:'details/detail.html',
id:'detail.html'
});
}
这种方法貌似只对button有效,在验证函数时,alert验证有效且不影响函数
跳转方法二:添加监听事件跳转
document.getElementById('at').addEventListener('tap',function(){
//alert('test a');
mui.openWindow({
url:'details/detail.html',
id:'detail.html'
});
});
添加监听事件对所有跳转都有效,但是在验证的过程中,使用了alert以后发现弹出框不显示且跳转不起作用,不知道具体什么原因,等以后找到原因再补充。
跳转方法三:使用.on形式跳转
基于官网(
http://dev.dcloud.net.cn/mui/event/#on)上的描述“除了可以使用addEventListener()方法监听某个特定元素上的事件外, 也可以使用.on()方法实现批量元素的事件绑定”。
参考样例:
mui(".mui-table-view").on('tap','.mui-table-view-cell',function(){ //获取id var id = this.getAttribute("id"); //传值给详情页面,通知加载新数据 mui.fire(detail,'getDetail',{id:id}); //打开新闻详情 mui.openWindow({ id:'detail', url:'detail.html' });})
以下是本宝宝的一些失败的例子,希望好心人士看到能指出问题所在。不过我也不会放弃的,如果找到了正确方法我会及时更新的。在这里先自我检讨一下。
//label使用.on形式跳转
// mui('.test').on('tap',function(e){
// //alert('test label');
// mui.openWindow({
// url:'details/detail.html',
// id:'detail.html'
// });
// });
// mui('#test').on('tap',function(e){
// //alert('test label');
// mui.openWindow({
// url:'details/detail.html',
// id:'detail.html'
// });
// });
//a标签使用.on形式跳转
// mui('.atest').on('tap','a',function(e){
// //alert('test a');
// mui.openWindow({
// url:'details/detail.html',
// id:'detail.html'
// });
// });