组件方式开发 Web App全站-5-开发基本图文组件H5ComponentBase
来源:互联网 发布:辣鸭头淘宝配方 编辑:程序博客网 时间:2024/06/05 04:58
这里先引申下什么叫做组件式开发?
组件式开发=(高内聚性和低耦合性),js封装,分而治之、重复利用。
H5ComponentBase
- 基本图文组件(图,文设置)
- 接受onLoad,onLeave事件
- 独立模块化开发
css样式规划
/* 基本图文组件对象 */var H5ComponentBase = function (name,cfg ) { var cfg = cfg || {}; var id = ( 'h5_c_'+Math.random()).replace('.','_'); // 把当前的组建类型添加到样式总进行标记 var cls = 'h5_component_'+cfg.type +' h5_component_name_' + name; var component = $('<div class="h5_component '+cls+'" id="'+id+'">'); // var component = $('<div class="h5_component">'); cfg.text && component.text(cfg.text); cfg.width && component.width(cfg.width/2); cfg.height && component.height(cfg.height/2); cfg.css && component.css( cfg.css ); cfg.bg && component.css('backgroundImage','url('+cfg.bg+')'); if(cfg.center === true){ component.css({ marginLeft : ( cfg.width/4 * -1) + 'px', left:'50%' }) } return component;}
通用全局css
/* 基本图文组件样式 */.h5_component{ background-size: 100%; background-repeat: no-repeat; position: absolute;}
测试
<!DOCTYPE html><html><head> <meta charset="UTF-8"/> <meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1"> <title>图文组件</title> <style type="text/css"> body{ margin: 0; padding: 0; background-color: #000; font-size: 12px; } .iphone{ width: 340px; height: 540px; background-color: #fff; /*水平居中的方法*/ position: absolute; left: 50%; top: 50%; margin: -270px 0 0 -170px; } </style> <script type="text/javascript" src="../js/lib/jquery.js"></script> <script type="text/javascript" src="../js/H5ComponentBase.js"></script> <link rel="stylesheet" type="text/css" href="../css/H5ComponentBase.css"> <body> <!-- 用于开发测试 H5ComponentBase 对象(基本的图文组件) --> <div class="iphone"> </div> <script type="text/javascript"> var cfg = { type : 'base', // text : "大家好", width : 514, height : 306, bg : './p1_people.png', css :{ left:50, top:50 }, center : true, } var h5 = new H5ComponentBase('bob',cfg); $('.iphone').append(h5); </script> </body></html>
下面开始第二步: 接受onLoad,onLeave事件
js文件内容添加onLoad和onLeave事件,添加class,如果animate**存在执行jquery的animate事件component.on('onLoad',function(){ component.addClass(cls+'_load').removeClass(cls + '_leave'); cfg.animateIn && component.animate(cfg.animateIn); return false; }) component.on('onLeave',function(){ component.addClass(cls+'_leave').removeClass(cls + '_load'); cfg.animateOut && component.animate(cfg.animateOut); return false; })
cfg对象添加内容;animateIn:{bottom:78,opacity:1},animateOut:{bottom:0,opacity:0},添加body点击,判断Load或者是Leave,然后触发var h5 = new H5ComponentBase('bob',cfg); $('.iphone').append(h5); var leave = true; $('body').click(function(){ leave =!leave; $('.h5_component').trigger(leave ? 'onLeave' : 'onLoad') })
0 0
- 组件方式开发 Web App全站-5-开发基本图文组件H5ComponentBase
- 用组件方式开发 Web App全站之通用图文组件类-H5ComponentBase(接受 onLoad、onLeave事件)
- 组件方式开发 Web App全站-6-图表组件-散点图组件开发
- 组件方式开发 Web App全站-7-图表组件-柱状图组件开发
- 组件方式开发 Web App全站框架源码
- 组件方式开发 Web App全站-1
- 组件方式开发 Web App全站-3
- 组件方式开发 Web App全站-4- 页面切换
- 组件方式开发 Web App全站-8-总项目
- 走近大前端:组件方式开发web app全站
- 慕课网实战—《用组件方式开发 Web App全站 》笔记三 -散点图组件开发
- 慕课网实战—《用组件方式开发 Web App全站 》笔记四-柱状图组件开发
- 组件方式开发 Web App全站-5-开发H5对象
- 慕课网实战—《用组件方式开发 Web App全站 》笔记五-折线图组件开发
- 慕课网实战—《用组件方式开发 Web App全站 》笔记六-雷达图组件开发
- 慕课网实战—《用组件方式开发 Web App全站 》笔记七-饼图和环图组件开发
- 慕课网实战—《用组件方式开发 Web App全站 》笔记一
- 慕课网实战—《用组件方式开发 Web App全站 》笔记二
- 三四
- 找对象 ssl2637 费用流
- Splay 模版
- C#读取EXCEL 文件同时向文件中写入数据和Excel的Range对象
- 计算机视觉SIFT算法详解
- 组件方式开发 Web App全站-5-开发基本图文组件H5ComponentBase
- Molly's Chemicals CodeForces
- 【HTML+javaScript】滚动-跑马灯
- 关于float
- 爬虫学习记录一
- 攻略-联想 Yoga 900 安装 Arch Linux 系统
- UVa 523
- 十大未来互联网趋势
- 矩形的个数