===============================
更新:DEMO和分析已经放出,地址在这里 
http://www.cnblogs.com/arfeizhang/p/faceoffdemo.html
=====================================

12年初,我参与了一个项目(在项目中主要负责实现下面说到的一个需求),这个项目针对美国国内用户,主要作用是投票。 这个项目会用于美国的一些民众评选,其中,包括奥巴马和罗姆尼竞选美国总统的民意调查和美国明星奖项评选。 US团队喜欢叫它faceoff,有对决的意思。

 

好吧,既然取名有点剑拔弩张,设计也会磨剑擦枪,设计稿大概是这个样子。(项目现在已经下线了,我按回忆做了一个简单的样子作为参考)

 

当时win8的metro风格出来有一阵子,类似的设计已不鲜见,一般是图上面一个overlay,overlay上面有些介绍文字,overlay一般是隐藏的(或显示一行标题),鼠标移到图片上时,overlay才从一个方向滑出来,显示在图片上面。

 

第一眼看到设计稿感觉没啥的,和win8 metro风格的图标差不多。可仔细一看,中间间隔是斜的……是斜的……

 

就这一个细节,会带来三个问题:

  • 图片必须是直角梯形
  • 图片上的文字内容,也要在直角梯形里排布
  • 鼠标的作用区域也是梯形,当鼠标悬停在梯形区域上时,overlay要出来
 

首先想到的一个办法是用canvas做,但和那边团队沟通后,他们说考虑到SEO还是要使用dom做,但允许在高级浏览器上图片是梯形,低级浏览器上图片是矩形。

 

这种非常规前端需求对前端知识综合应用是个考验。经过一些尝试,我最终实现了这个需求。
因为这个项目已经下线,没法给大家链接。不过我准备写个简单的DEMO给大家参考下,晚点完成后放出来。
不过在DEMO出来之前,大家可以先把它当成个前端试题,拿来练下手,经常试下非常规前端需求实现,对自己的技术提升有帮助。
更新:DEMO已经放出,地址在这里 
http://www.cnblogs.com/arfeizhang/p/faceoffdemo.html
本文是博主Arfei Zhang原创,欢迎转载。转载请注明转自博客园,并附上本文链接http://www.cnblogs.com/arfeizhang/p/faceoff.html,谢谢!

转载于:https://www.cnblogs.com/arfeizhang/p/faceoff.html

服务过美国总统竞选的非传统投票UI【demo已放出】相关推荐

  1. 服务过美国总统竞选的非传统投票UI [解析及DEMO]

    上篇文章和大家介绍了需求情况和难点分析,大家可以看这个链接了解详细 服务过美国总统竞选的非传统投票UI =================正文开始=========================== ...

  2. 2012美国总统竞选赞助数据分析项目学习

    项目目的:通过对2012美国总统竞选赞助数据分析,得出哪个总统更具有优势的结论 项目流程:数据载入.数据清洗.数据聚合分组以及可视化 项目地址:https://tianchi.aliyun.com/n ...

  3. 数据分析案例--2012美国总统竞选赞助数据分析

    美国总统竞选赞助数据分析 本文来自阿里云天池实验室,案例原地址 自学数据分析的小王同学借鉴一下,自己写一遍,分析一遍,自己做的代码和结果如下 1.导入相关的python数据分析的库 import pa ...

  4. pandas实战-2012美国总统竞选赞助分析

    1.数据载入和总览 1.1数据来源 数据来源于阿里云天池公共数据-pandas实践-2012美国总统竞选赞助数据分析,如图所示 然后下载数据并保存到本地,最后读取(本次操作使用工具-jupyter n ...

  5. pandas数据分析案例--2012美国总统竞选赞助数据分析

    美国总统竞选赞助数据分析 本文内容参考阿里云天池实验室,在原有基础上添加了一些结论的分析. 原案例地址 数据来源 1.首先导入相关的python数据分析的库 import pandas as pd i ...

  6. 数据分析- 2012美国总统竞选赞助数据分析

    数据分析- 2012美国总统竞选赞助数据分析 导入有关的包 1. 数据载入 1.1 数据读取 1.2 数据合并 1.3 数据基本统计分析 2. 数据清洗 2.1 缺失值处理 2.2 数据转换 2.2. ...

  7. 《人类简史》作者:到2028年,美国总统竞选可能不再由人类主持

    1."语言是人类文化的操作系统.从语言中产生了神话和法律,众神和金钱,艺术和科学,友谊和国家,以及计算机代码.人工智能对语言的掌握,意味着它现在可以入侵并操纵文明的操作系统." 2 ...

  8. 竞选]美国总统竞选 奥巴马 演讲

    Obama: 奥巴马: Hello, Chicago. 您好,芝加哥. If there is anyone out there who still doubts that America is a ...

  9. Pandas方法实践-2012美国总统竞选赞助数据分析

    目录 1. 数据载入和总览 1.1 数据载入(pd.read_csv()) 1.2 数据合并(pd.concat()) 1.3 数据预览和基本统计分析 2. 数据清洗 2.1 缺失值处理​ 2.2 数 ...

最新文章

  1. pb数据窗口显示图片_PowerPhotos帮助你再Mac系统上更好,更快的管理自己的图片...
  2. 在浏览器地址栏中输入URL后发生了什么
  3. 用 Hasor 谈一谈MVC设计模式
  4. Go笔试题目Go与PHP分别实现方法
  5. Linux系统关闭或重新启动主机的命令详解
  6. spring mvc拦截器_Spring MVC拦截器示例
  7. 【每日一linux命令6】命令中的命令
  8. 自考--网络经济与企业管理--选择易考题
  9. PaperWeekly 第十一期
  10. python h5开发_从零搭建移动H5开发项目实战
  11. apt install:文件尺寸不符(25294 != 25412)。您使用的镜像正在同步中?
  12. CCNA学习笔记 基础知识回顾(1)
  13. 谈谈我对Java并发的理解——读《Java并发编程实战有感》
  14. node koa2 mysql_Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站
  15. 主成分分析R语言实现
  16. 书里都没的高清无码彩图【人人都是产品经理:9084】
  17. 数据结构上机实验1——线性表——班级管理系统
  18. http响应码code含义
  19. 重磅!图森王乃岩团队最新工作—TridentNet:处理目标检测中尺度变化新思路
  20. android显示器,古董 or 真香? ThinkVision 28: 28'' 4K Android 显示器开箱

热门文章

  1. esp32-s2 wifi
  2. lbe+android6.0+免root,LBE安全大师|lbe安全大师免root下载v6.1.2482 - 欧普软件下载
  3. 使用ViewPager和FragmentPagerAdapter实现Tab
  4. 安卓多级列表的简单实现
  5. mysql查询数据的总记录数
  6. 选择云服务器主要看那方面的参数和性能
  7. 在CentOS上安装宝塔Linux面板
  8. java 罗马数字_JAVA,罗马数字与阿拉伯数字的互转
  9. JCG836pro路由器刷入breed
  10. Clickhouse Kafka Engin参数记录