使用Html5 plus + Mui 进行移动App开发,有一段时间了,这几日得空,做个资讯App分享给大家。

今天主要分享主页实现,首先看下效果:

此界面主要分为:标题、内容分类列表、搜索及设置按钮。

标题

<header class="mui-bar mui-bar-nav">
<h1 class="mui-title">实全科技</h1>
</header>

内容分类列表

<ul id="btnDefault" class="mui-table-view" style="margin-top: -5px;">
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
财经
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
科技
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
财经
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
体育
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
军事
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
文化
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
社会
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
娱乐
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
游戏
</a>
</li>
</ul>

搜索框

<div class="mui-input-row mui-search" style="margin-top: 10px;">
<input type="search" id="btnSearch" class="mui-input-clear mui-input" placeholder="搜索">
</div>

设置按钮

<ul class="mui-table-view" style="margin-top: 10px;">
<li class="mui-table-view-cell">
<a id="btnSetting" class="mui-navigate-right">
设置
</a>
</li>
</ul>

界面定义完后,接下来进行事件定义,实现交互效果:

mui('#btnDefault').on('tap', 'a', function() {
console.log(JSON.stringify(this.innerText));
//打开新窗口
let keyword = this;
mui.openWindow({
url: 'pages/360news.html',
id: '360news',
extras: {
keyword: this.innerText
}
});
}); let btnSetting = document.getElementById("btnSetting");
btnSetting.addEventListener("tap",function(){
mui.openWindow("pages/setting.html","setting");
}); let btnSearch = document.getElementById("btnSearch");
btnSearch.addEventListener("keypress",function(event) {
if(event.keyCode == "13") {
document.activeElement.blur();//收起虚拟键盘
mui.openWindow({
url: 'pages/360news.html',
id: '360news',
extras: {
keyword: String(btnSearch.value).trim()
}
});//TODO 完成搜索事件
event.preventDefault(); // 阻止默认事件---阻止页面刷新
}
});

完整代码:

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<link href="pages/css/mui.min.css" rel="stylesheet" />
</head>
<body>
<header class="mui-bar mui-bar-nav">
<h1 class="mui-title">实全科技</h1>
</header>
<div class="mui-content">
<div class="mui-input-row mui-search" style="margin-top: 10px;">
<input type="search" id="btnSearch" class="mui-input-clear mui-input" placeholder="搜索">
</div>
<ul id="btnDefault" class="mui-table-view" style="margin-top: -5px;">
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
财经
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
科技
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
财经
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
体育
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
军事
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
文化
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
社会
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
娱乐
</a>
</li>
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
游戏
</a>
</li>
</ul> <ul class="mui-table-view" style="margin-top: 10px;">
<li class="mui-table-view-cell">
<a id="btnSetting" class="mui-navigate-right">
设置
</a>
</li>
</ul>
<div style="margin-bottom: 10px; text-align: center;"></div>
</div>
<script src="pages/js/mui.min.js"></script>
<script type="text/javascript">
mui.init({
swipeBack:true //启用右滑关闭功能
});
mui.plusReady(function(){
mui('#btnDefault').on('tap', 'a', function() {
console.log(JSON.stringify(this.innerText));
//打开新窗口
let keyword = this;
mui.openWindow({
url: 'pages/360news.html',
id: '360news',
extras: {
keyword: this.innerText
}
});
}); let btnSetting = document.getElementById("btnSetting");
btnSetting.addEventListener("tap",function(){
mui.openWindow("pages/setting.html","setting");
}); let btnSearch = document.getElementById("btnSearch");
btnSearch.addEventListener("keypress",function(event) {
if(event.keyCode == "13") {
document.activeElement.blur();//收起虚拟键盘
mui.openWindow({
url: 'pages/360news.html',
id: '360news',
extras: {
keyword: String(btnSearch.value).trim()
}
});//TODO 完成搜索事件
event.preventDefault(); // 阻止默认事件---阻止页面刷新
}
});
}); </script>
</body>
</html>

至此整个界面分享完毕,后续将分享,数据列表展示界面:

App下载地址:http://m3w.cn/shiquan 欢迎提供宝贵意见!

基于html5 plus + Mui 移动App开发(一)的更多相关文章

  1. 基于html5 plus + Mui 移动App开发(三)-食全库

    食全库-食品安全知识库. 食品安全(food safety)指食品无毒.无害,符合应当有的营养要求,对人体健康不造成任何急性.亚急性或者慢性危害.根据倍诺食品安全定义,食品安全是“食物中有毒.有害物质 ...

  2. 基于Html5 Plus + Vue + Mui 移动App 开发(二)

    基于Html5 Plus + Vue + Mui 移动App 开发(二) 界面效果: 本页面采用Html5 Plus + Vue + Mui 开发移动界面,本页面实现: 1.下拉刷新.上拉获取更多功能 ...

  3. 基于Html5的移动端APP开发框架

    快速增长的APP应用软件市场,以及智能手机的普及,手机应用:Native(原生)APP快速占领了APP市场,成为了APP开发的主流,但其平台的不通用性,开发成本高,多版本开发等问题,一直困扰着专业AP ...

  4. 基于Html5 Plus + Vue + Mui 移动App开发(三)-文件操作(读取、保存、更新数据)

      随着手机的发展,现在越来越多的人选择在手机上看书.无论是专业书籍.文学.英语还是网络小说,在手机上看新闻成了人们处理零碎时间的办法.在智能手机里安装一个资讯APP,可以随时.随地查看自己想看的资讯 ...

  5. 基于React Native的58 APP开发实践

    React Native在iOS界早就炒的火热了,随着2015年底Android端推出后,一套代码能运行于双平台上,真正拥有了Hybrid框架的所有优势.再加上Native的优秀性能,让越来越多的公司 ...

  6. HBuilder mui 手机app开发 Android手机app开发 ios手机app开发

    经过一段时间的学习,做公司项目,对mui框架有了更加深入完整的了解,其实刚开始接触HBuilder中的mui框架只是简单的了解,并没有深入的研究,后来由于工作的需求,不得不深入研究,并运用的项目中去. ...

  7. MUI之App开发

    一般开发APP分为两种:1.原生ios和android语言开发.2.混合开发,里边穿插h5的东西. 3.第三种:现在因为前端用hbuilder工具开发的情况越来越多,这家公司又提供了更多的选择,所以近 ...

  8. HBuilder mui 手机app开发 Android手机app开发 ios手机app开发 打开新页面 预加载页面 关闭页面

    创建子页面 在mobile app开发过程中,经常遇到卡头卡尾的页面,此时若使用局部滚动,在android手机上会出现滚动不流畅的问题: mui的解决思路是:将需要滚动的区域通过单独的webview实 ...

  9. 跨平台移动APP开发进阶(三)hbuilder+mui mobile app 开发心酸路

    注:请点击此处进行充电! 1.问题描述:在实现图片轮转时,若将 <script type="text/javascript"> mui("#slider&qu ...

随机推荐

  1. sau交流学习社区--看小说的lovebook一个无线端BS应用

    一.前言 loveBook爱上阅读,是一款webapp的读小说等书籍的并且阅读的应用.如果觉得可以,欢迎fork和star. 自己最近在追斗破苍穹电视剧,下班时候在地铁上总听到有人说,斗破苍穹书籍比电 ...

  2. 【转】委托的N种写法,你喜欢哪种?

    一.委托调用方式 1. 最原始版本: delegate string PlusStringHandle(string x, string y); class Program { static void ...

  3. [转载] Java中枚举类型的使用 - enum

    目录 1 枚举类的编译特性 2 向枚举类中添加方法 3 接口内部创建枚举 4 枚举类中使用枚举 5 扩展: 验证values()不是通过父类继承的 本文转载自博客 - Java枚举类型, 博主对原文内 ...

  4. 小程序 wepy框架 + iview-weapp的用法

    最近在弄wepy的时候在想有没有什么ui比较合适一点的wepy的,也是在网上看了好久发现iview还不错.引用简单,上手超快,组件绚丽!当然,这里还介绍下微信官方建议的框架也是和不错的,有需要的可以看 ...

  5. 好看又能打的CRM系统大比拼:Salesforce, SugarCRM, Odoo等

    介绍 今天的CRM市场提供了大量的解决方案和软件替代品.有些适合大型企业(通常需要内部托管),而其他企业则更多地应用于SME的需求(通常使用云托管解决方案). 在CRM解决方案方面,提供商必须调整其产 ...

  6. Api管家系列(三):测试和Rest Client

    今天我们来看一下Api管家的测试功能 在项目首页可以看到,测试过的接口和未测试的接口,点击环型图能列出相应的接口 我们选择未测试的,这些接口我都已经实现好了,只是没有用API管家进行测试,所以还显示未 ...

  7. redis cluster + sentinel详细过程和错误处理三主三备三哨兵

    redis cluster + sentinel详细过程和错误处理三主三备三哨兵1.基本架构192.168.70.215 7001 Master + sentinel 27001192.168.70. ...

  8. SQL Server关于predicate、density、selectivity、cardinality名词浅析

      在SQL Server中,我们要看懂执行计划和统计信息,我们可能需要深刻理解一些关键词,例如密度(Density).选择性(Selectivity).谓词(predicate).基数(Cardin ...

  9. MSSQL2008 R2 数据库展开报错:值不能为空 参数名:viewInfo

    打开数据库时报错,提示应用程序组件中发生了无法处理的异常.如果单击“继续”,应用程序将忽略此错误并尝试继续. 针对此类问题的解决办法是:将路径C:\Documentsand Settings\Admi ...

  10. Storm入门(六)深入理解可靠性机制

    转自http://blog.csdn.net/zhangzhebjut/article/details/38467145 一 可靠性简介 Storm的可靠性是指Storm会告知用户每一个消息单元是否在 ...