世界杯如火如荼的进行。视频站点相似于门户站点。须要高速依据外部环境更新内容。

产品经理须要策划活动,并安排实施。这个活动就是在这样背景下产生的,爱奇艺与运营商合作,实现双赢。爱奇艺能够通过运营商向海量用户发送短信的方式。提高用户数,运营商通过爱奇艺视频平台给用户很多其它种多样的福利,提高用户黏性。

  总的来说:运营商实用户,视频站点有内容。用户须要内容。有内容的须要用户。实用户的须要满足用户内容的需求。两者长处突出、需求明显合作水到渠成。另外爱奇艺将运营商作为大客户管理,保证了协同作战的机动性。

    书归正传。这个“看世界杯送流量”的项目正是在运营商和爱奇艺双赢的局面下。借着世界杯的东风产生的。活动的形式用户每天看半小时视频会获得虚拟啤酒一罐,每次打开啤酒会有中流量包的机会。假设没有打开也会有个能量积攒的过程,假设能量足够多也能够获得流量包。获取流量包会跳转到手机号输入页面,而我正是负责这个页面的开发。上线界面效果。

本项目重构方向主要从引入simpleModal插件,对原有遮罩代码进行替换,simpleModal插件能够自己主动化设置遮罩。文档遵循jQuery插件通过设置html类与js參数设置遮罩状态。并设有回调方法。此项目并没有设置回调方法。仅是写好遮罩数据结构与样式部分,并设置默认隐藏。

设置Modal方法就可以自己主动水平垂直居中。降低了大量代码的书写。

重构后代码地址:http://download.csdn.net/detail/yingyiledi/8319317


项目介绍

(一).“看世界杯送流量活动手机号验证开发”

 本活动页面开发的主要需求:

1.内容
  依据原型图能够将内容分为两块:
  • 手机号输入框和button
  • 弹出框

2.结构(HTML):

   依据分析内容构造HTML:

  • 将上述两部分内容放入一个外层div中。每一个部分内容再加div包裹。加入语义化标签。

3.样式(CSS):

   此处的样式是这次项目遇到最大的问题。前一个项目没有考虑移动端适配的问题。而这个项目暴露了这个问题。首先解说适配的使用,其次是遮罩层的特效解说。

  •  适配初步

    顾名思义。使得设计的内容适应不同设备屏幕尺寸。

<strong><span style="font-family:FangSong_GB2312;font-size:18px;"><meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=0"/></span></strong>

   ViewPort <meta>标记用于指定用户能否够缩放Web页面。

如能够。那么最大、最小缩放比例。

使用ViewPort <meta>标记还表示文档针对移动设备进行了优化。

ViewPort <meta>标记的content值是由指令及其值组成的以逗号分隔的列表。

上述为对页面是否可缩放的设置,接下来一个更重要的概念是媒体查询。媒体查询这个链接是对媒体查询比較具体的描写叙述。

总而言之:媒体查询是通过设置在不同媒体条件下,显示不相同式,从而达到不同的渲染效果。

即针对不同设备条件,写了多份css代码,以适应不同的显示需求。由媒体查询概念的使用。催生了响应式布局这门技术,这篇链接文章是对响应式布局核心内容的大体介绍。

    实习单位也有自己的响应式布局css适配文件。这里看一部分代码内容:

@media only screen and (max-width: 300px) {
body{font-size:8.33333px!important}
.viewport{max-width:300px}
}
@media only screen and (max-width: 310px) and (min-width: 300px) {
body{font-size:8.33333px!important}
.viewport{max-width:300px}
}
@media only screen and (max-width: 320px) and (min-width: 310px) {
body,table{font-size:8.88889px!important}
.viewport{max-width:320px}
}
@media only screen and (max-width: 360px) and (min-width: 320px) {
body,table{font-size:8.88889px!important}
.viewport{max-width:360px}
}

   如上对单位给定的这个适配文件媒体查询的分析能够得出例如以下结论:

(1)此文件给出的媒体查询依据屏幕宽度来查询媒体,并进行不同的样式设置。

(2)这里媒体查询依据不同设备宽度设置字体的大小和但是区域的大小。

同一时候应用此媒体查询应该将包裹全部内容的最外层div设置成viewport类。

(3)设置各个标签宽度时。除非依据不同媒体设置不同宽度,否则不能使用像素宽,而是使用百分比。

即布局有两种方法①.依据不同媒体设置不同宽度 ②.统一用百分比表示宽度。

<div id="viewport" class="viewport"></div>

    上述两图为分别在chrome上模拟ipad和ipnoe上显示的效果,从css栏中能够看出,依据媒体的不同,媒体查询出对应的样式进行了渲染。

  • 弹出窗特效

   弹出窗特效的原理:

  (1)弹出框中的内容放置在一个特殊的DIV层中,然后默认隐藏它(即初始不可见。display:none)。

  (2)当用户运行某个动作时,我们将之前设置好的隐藏层显示在全部页面元素的最上层(将使用JS操作实现)。

  (3)在弹出DIV窗体中设 置一个button来运行——当用户点击此button时关闭窗体的功能。

 弹出窗实现,构造外层div,这里外层div的样式设置很重要:

.dialog {position: fixed;top: 0;bottom: 0;left: 0;right: 0;display: none;height:100%;width:100%;background-color: rgba(0, 0, 0, .7);
}

这里dialog类为最外层标签下viewport类下的div。默认隐藏此标签。当脚本触发出现时,通过fixed设置为固定的界面,宽度和高度都为100%即占领全屏幕显示此div。此时用户只能与此div下内容交互。达到了弹出窗的效果。

弹出窗内部布局和样式与普通情况无二。差别在于不同浏览器适配弹出框宽和高以及位置的设定上。

.dialog-inner {position: absolute;top: 50%;left: 50%;width: 492px;height: 458px;background-image: url(popup.png);background-repeat: no-repeat;background-size: contain;-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);-o-transform: translate(-50%, -50%);transform: translate(-50%, -50%);
}

4.交互(js/jQuery):

    依据原型图推断须要实现的用户行为交互。

   加入交互:

  • 用户输入手机号提交号码推断是否为举办活动地区的电信手机号。

  • 假设是则提交号码到后台。并弹出提示框。

  • 否则红字显示请输入正确电信手机号。

技术实现:

(1)此项目是电信在多个省份开展活动。所以会涉及到电话号码匹配的问题:须要匹配两项数据一个是运营商是否正确。另外一个则是是否为所在活动省份。

       这里产品给了一张excel表格列出了电信号码号段。excel之长无法全然匹配,于是找到个一种更方便的方法:网上有很多电话号码归属地验证的开放接口,这里选用的是淘宝的电话号码归属地接口。通过正則表達式将全部的省份都列出来,推断返回数据是否为电信号码同一时候也是开展活动的号码实现要求。

var validate = false;$.get("http://tcc.taobao.com/cc/json/mobile_tel_segment.htm",{tel:val},function(data){pattern1 = /电信/;pattern2 = /(北京)|(上海)|(江苏)|(湖南)|(浙江)|(江西)|(福建)|(云南)|(贵州)|(青海)|(黑龙江)|(辽宁)|(湖北)|(甘肃)|(重庆)|(广东)|(海南)|(新疆)|(河南)/;if(pattern1.test(data["catName"])){if(pattern2.test(data["province"])){validate = true;}},"jsonp");//引用淘宝接口,首先对运营商进行推断。然后对省份进行推断});//提交电话号码,假设正确生成弹窗,否则又一次输入,提供错误信息

(2)这里涉及到跨域訪问的问题,解决方法主要是通过构造script标签的src属性值解决,可行的方法是将get方法的类型设置为jsonp。

                        (二).“看世界杯送流量”宣传页

   这个页面很easy,需求不过将页面放到居中位置,引入适配。加入一个下载button就可以。

.viewport img {max-width: 100%;margin-bottom: 30px;
}

这里用到img适配时的处理方法,即设置max—width;100%就可以依据媒体查询适配。

交互方面遇到了一个小bug:在确定下载button宽度时,是依据图片宽度确定的,而图片有个载入时间,这就可能造成第一次载入不成功,而第二次由于有缓存,能够载入成功。

改进的代码。

 $("img").load(function(){$("div").text("图像已载入");});

即用load函数,当图片载入完,才运行任务。

(三).发现新功能“我的”宣传页

(四).爸爸去哪7月第一期宣传页

这两个宣传页不过须要加适配进去。能够套用自己的模板。高速完毕。

本周技术心得
  • (1)拿到原型图力求对界面的边距、长宽、背景色、字体大小及颜色做一个总体的评估。不清楚的地方与视觉设计师沟通解决。
  • (2)界面的交互行为须要和交互设计师沟通清楚。理清楚交互的流程及效果。

    并以此作为定义类和属性的依据之中的一个。

  • (3)对整个项目须要用到的技术有一个明白的预计,推断整个项目的复杂度。
  • (4)响应式设计宽度和边距问题,须要通过实践分析形成自己的理解。
个人提高方向
  • (1)首先是写代码的规范上,须要看书和实践中学习。
  • (2)h5标签和css3的应用,应该多看演示样例代码。分析代码架构原理。
  • (3)css+div特效的实现
  • (4)眼下来说写的界面相对简单,js代码也相对局限。接下来应该总结归纳做页面的方法,力求高速标准化完毕任务。将很多其它的精力用于写复杂代码和后端PHP技术的学习上。
  • (5)每天10点之前,制定每天的工作计划,并通过读书修炼个人技能。
  • (6)向斌哥和孝芳姐贴身学习。了解他们的开发经验和职业发展感悟。

转载于:https://www.cnblogs.com/mqxnongmin/p/10525893.html

iosclient发现_世界杯送流量活动项目总结相关推荐

  1. ios客户端发现_世界杯送流量活动项目总结

       世界杯如火如荼的进行,视频网站类似于门户网站,需要快速根据外部环境更新内容.产品经理需要策划活动,并安排实施.这个活动就是在这样背景下产生的,爱奇艺与运营商合作,实现双赢.爱奇艺可以通过运营商向 ...

  2. iosclient暑期“动画屋“活动项目总结

        入职实习的这个公司,第一天就分配了任务.从零開始写一个网页.之前尽管了解一些前端知识.但从头开写还是遇到了非常多问题,互联网公司讲求效率,有deadline还是比較有紧迫感的,与在实验室放羊状 ...

  3. ios客户端发现_动画屋活动获奖展示和获奖模块开发总结

       最近在看<web2.0策略指南>,开篇即对flicker的DVD租赁业务模型进行分析,目前看来这样的商业模型仍然很强大,而自去年纸牌屋后,flicker又引领了一股自有内容的热潮,湖 ...

  4. 《ASP.NET Core项目开发实战入门》送书活动结果公布

    截至2020.09.20 本次送书活动<ASP.NET Core项目开发实战入门>.下面把Top 5的留言截图给大家回顾一下. 以下5位同学将获赠书籍一本: 小林子 鉴 静 红脸先生 阿星 ...

  5. 《机器学习项目开发实战》送书活动结果公布

    截止到8月8日24:00,本次送书活动 共收到70位同学参与回复,本次很多同学在看到活动的书<机器学习项目开发实践>,自行就到各大网络商店上购买了书,据反馈这个书很不错,小二昨天也收到一本 ...

  6. 云开发如何帮助业务扛过大流量活动洪峰丨深度好文

    在企业里,做活动是一种十分常见的需求,有面向C端用户开展的活动,也有面向公司内部员工的活动.随着互联网技术的不断发展和疫情等方面的原因,线上开展的活动也越来越多,常见的形式有:内容征集.评论弹幕.点赞 ...

  7. 一招上手!这样设计扛住亿级流量活动系统

    作者 | 刘艳杰 责编 | 伍杏玲 出品 | CSDN云计算(CSDNcloud) 在企业里,做活动是一种十分常见的需求,有面向C端用户开展的活动,也有面向公司内部员工的活动.随着互联网技术的不断发展 ...

  8. 面向大规模流量活动的高可用架构实践

    分享的内容主要分为三个部分: 1.大流量活动的系统扩容评估方法 2.系统高可用架构设计实践 3.大规模流量活动的实践案例 大流量活动的系统扩容评估方法 大流量活动有多种形式,除了我们常见的电商大促(双 ...

  9. 第一代程序员王小波 (送书活动)

    整理 : 叶子 | 出品 :OSC开源社区(ID:oschina2013) 文末送书活动,记得看完啊 ! 前两天,#王小波逝世25周年#的话题登上热搜,这位英年早逝的天才的过往不由浮现在我脑海. 说起 ...

最新文章

  1. 《构建之法》8、9、10章
  2. websphere jndi oracle,websphere7.0获得JNDI连接报invalid username/password
  3. linux下生成coredump文件
  4. The type Resource is not accessible due to restriction on required library
  5. 数据库保存经纬度,需要采用什么数据类型,小数点应该精确多少位?
  6. c语言定时器1khz占空比,555定时器产生方波原理(四款555定时器产生方波的电路详解)...
  7. ceph16 rbd加密
  8. wow Time Blessing Replacer
  9. SOAR:软件定义安全之编排篇
  10. ADS7830 FPGA实现
  11. c语言编程基础心得,C语言编程学习心得体会
  12. 【SDPTWVRP】基于matlab头脑风暴算法求解带时间窗和同时取送货车辆路径问题【含Matlab源码 1990期】
  13. Correcting Chinese Spelling Errors with Phonetic Pre-training
  14. 【FFmpeg杂记】音频解码输出PCM格式数据分析
  15. OSG三维渲染引擎编程学习之五:“第一章:OSG介绍” 之 “1.5 OSG模块”
  16. 技嘉1080显卡体质测试软件,技嘉GTX1080 Xtreme Gaming显卡评测:创新的重峦式三风扇...
  17. 学前教育本科实践有计算机没,H学院学前教育本科专业“全实践”教学体系的优化.pdf...
  18. android usb单反相机,android mtp 获取单反相机中的照片
  19. 月薪过万应届生的10个忠告,抽点时间看看,真心受用!!
  20. TeamViewer连接时闪退

热门文章

  1. Excel技巧:删除换行符、文本前空格、文本中间空格
  2. 投影仪和电视哪个更好?一文科普详细比较
  3. 【微信小程序】横向/纵向布局(98/100)
  4. Git入门基础-Chivalrous-专题视频课程
  5. Python入门学习笔记17(sqlalchemyd的使用)
  6. [Western CTF 2018]shrine
  7. 【工作总结】工作感受
  8. 微信公众号自定义分享实现(开发者)
  9. css特效(使用伪元素生成随机颜色爱心)
  10. html最多显示两行,css 实现两行或多行文本溢出显示省略号(...)