Reeder Web版

访Reeder界面效果

一直很欣赏触控手势的代码实现,所以最近折腾了个Javascript触控手势库--JTouch,效果还有诸多不完善之处,苦于硬件设备不完善,针对ie10的兼容性一直没有跟上。在版本更新到1.1的时候,又颠覆了自己的好多想法,代码的改动量上比较大。小的改动随时都会出现,所以也就一直在1.1上改来改去。

Github地址:https://github.com/liutian1937/Reeder

Demo地址:http://liutian1937.github.io/Reeder/demo.html

图片未完全载入会影响效果,现在采用的兼听图片onload的方式,仍旧有不足,求点子

在改动JTouch的同时一直想要拿它去搞个什么东西,某天仔细研究了Reeder的界面效果,马上被其低调的奢华吸引了。所以决定拿JTouch做个Reeder的web版,当然只是界面的Web版...不过话说,我是想写个php的后端来配合这个界面的...

先说说Reeder是什么东西:

《Reeder》是一款评价极高的谷歌阅读器Google Reader软件,获得了2600多个5星评价。软件简约的UI和强大的功能都是其重要特色。首先,它支持与Google Reader云端同步,支持文件夹分类管理,还可以给RSS条目加星或做注释,还支持条目分享,图片缓存,状态保存等等。在其他服务的关联方面,Reeder还支持Instapaper/ReadItLater,还可以发送给Delicious/Pinbard或Twitter。

想法到产品的进化过程(比较水)

想必很多人并不关心这个东西,因为我也是这样,来看这个的人肯定喜欢干货(直白的代码更有说服力)。但是我感觉说点这个还是有必要的,本人水平有限,扯淡也一般,所以扯点白话大家就凑合着看一下。首先个人是比较倾向于表现类的开发的,因为当你看到你写出来的东西实现了某个效果的时候是比较有成就感的。对于开发表现类的东西,我总结了个人的一些见解:

  1. 你要清楚有哪些交互过程,有哪些动画,有哪里是需要用到数据交互的。
  2. 根据你的理解将这些东西进行分块,最好越详细越好,然后将这个块再组合起来,看哪些地方是通用的可以用公共的函数,哪些地方是需要单独封装的等等。(我一般会在纸上画这些东西)
  3. 这步比较轻松,躺在床上想就行了,至少我喜欢这样。看完第二部的模块之后,我并不会着手写代码,而是会花点时间想,当然经常睡着...
  4. 入手写demo,由于每个人水平不同,但是我们的目的是相同的,这一步要求个人根据自己水平写demo,不管用不用模块,用不用封装,不计较代码效率的也要写出表现效果来。(当然别写的你自己都不认识了)
  5. 写好demo,重新审查自己的代码,进行优化,简化,封装等等
  6. 在感觉自己把第5步做的还算ok了,去google搜索类似的小模块,参考别人的代码,然后完善自己的demo...

代码中用到了哪些东西(部分要点)

  1. 手势事件,我用的自己的JTouch库,貌似是多余了一点,因为手势并不多。失败之处,造成耦合。
  2. Font Icon,文字小图标,支持将代码转换成小图标,我用的 IconMoon的文字库,http://icomoon.io/app/(需要现代浏览器支持)
  3. translate实现的动画效果,以及各种高度,宽度,滚动距离的判断,其中的算法给我折腾的很迷糊
  4. 兼容性与初始化的问题
  5. 异步加载数据,与监听图片完全载入
  6. JTouch鼠标触控手势库,JNav实现的是左侧一直停留在顶部的导航,JScroll是支持手势操作的容器(放出的接口比较乱,请静待注释),Common是一些公共函数

实现的效果

  • 内容与导航部分支持触控手势与鼠标手势
  • 左侧导航跟随并滚动到底部静止
  • 左侧控制选择前一篇后一篇
  • 横向拖拽标题导航可以实现简单数据交互
  • 右侧拖拽到顶部或者底部异步加载数据

不足之处

  • 多浏览器兼容性方面
  • 性能消耗
  • 图片完全载入的监测
  • 耦合性
  • ...
 
 
 
标签: javascriptjtouch

Reeder Web版的更多相关文章

  1. Node学习笔记(三):基于socket.io web版你画我猜(一)

    经过惨淡的面试,也是知道了自己的不足,刚好最近在学习node,心中便有了做一个web版的你画我猜的想法 首先说下思路,在做准备工作的时候,有两个大概的思路: 1.规定一块div,捕捉鼠标事件,动态生成 ...

  2. 网站压力负载测试工具:Web版已逝,只好送大伙单机版

    前言: 最近老板资金周转出了点问题,工资好久没发了,于是暂闲置在家,静待老板弄到钱东山再起的消息: QQ群里,偶尔不时的会有人问,原来的分布式网站负载工具怎么下载不了啦?或者不能用啦?之类的问题. 我 ...

  3. 挖掘微信Web版通信的全过程 [转]

    昨天是周末,在家闲得无聊,于是去weiphone.com逛了一圈,偶然发现有人发了一帖叫<微信 for Mac>, 这勾起了我的好奇心,国内做Mac开发的人确实很少,对于那些能够独自开发一 ...

  4. RDIFramework.NET Web版介绍

    RDIFramework.NET  Web版介绍 B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件.这种模式统一了 ...

  5. RDIFramework.NET V2.5(.NET快速信息化系统开发框架) Web版界面样例(可参考)

    RDIFramework.NET V2.5(.NET快速信息化系统开发框架)  Web版介绍 现已升级到V2.8,点击查看 B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起 ...

  6. WEB版一次选择多个文件进行批量上传(Plupload)的解决方案

    WEB版一次选择多个文件进行批量上传(Plupload)的解决方案  转载自http://www.cnblogs.com/chillsrc/archive/2013/01/30/2883648.htm ...

  7. Web版RSS阅读器(三)——解析在线Rss订阅

    上篇博客<Web版RSS阅读器(二)——使用dTree树形加载rss订阅分组列表>已经写到读取rss订阅列表了,今天就说一下,当获取一条在线rss订阅的信息,怎么去解析它,从而获取文章或资 ...

  8. Web版的各种聊天工具

    直到近期为止,我们经常使用的即时聊天工具(QQ.msn等)了Web版,大家不用下载庞大软件,直接打开网页就能够与自己的好友聊天,非常方便.在此将时汇总        便于大家查找        节约大 ...

  9. 挖掘微信Web版通信的全过程

    昨天是周末,在家闲得无聊,于是去weiphone.com逛了一圈,偶然发现有人发了一帖叫<微信 for Mac>,这勾起了我的好奇心,国内做Mac开发的人确实很少,对于那些能够独自开发一些 ...

随机推荐

  1. C#二维码生成解析

    C#二维码生成解析工具,可添加自定义Logo 二维码又称 QR Code,QR 全称 Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的 Bar Code 条形码能 ...

  2. NotePad++ for PHP

    原文:NotePad++ for PHP 一.安装设置 1.首先根据你的系统下载相应的安装文件.http://notepad-plus-plus.org/ Notepad++插件:http://sou ...

  3. 云server 性能测试web压力测试

    前言:如今,云server主流.它已成为许多中小型企业的首选server,但是云server它是一个虚拟机.所以性能是一个大问题,从这里开始介绍云server性能测试,云webserver压力测试. ...

  4. 假如我来架构12306网站---文章来自csdn(Jackxin Xu IT技术专栏)

    (一)概论 序言:  此文的撰写始于国庆期间,当中由于工作过于繁忙而不断终止撰写,最近在设计另一个电商平台时再次萌发了完善此文并且发布此文的想法,期望自己的绵薄之力能够给予各位同行一些火花,共同推进国 ...

  5. Visual Studio 单元测试之六---UI界面测试

    原文:Visual Studio 单元测试之六---UI界面测试 UI界面测试其实就是录制操作路径(Mapping),然后按照路径还原操作顺序的一个过程.这个方法对于Winform和Webform都同 ...

  6. Windows在结构FTPserver

    同Windows8 案件,结构介绍 FTPserver脚步: 1.为Windows开启FTP功能:控制面板->程序->启用或关闭Windows功能.将下图所看到的的复选框选中 waterm ...

  7. leetcode第五题--Longest Palindromic Substring

    Problem:Given a string S, find the longest palindromic substring in S. You may assume that the maxim ...

  8. 图文解说PhpStorm 7.0版本支持PHP 5.5

    PhpStorm7.0版本终于在2013年与广大开发者见面了!鉴于PhpStorm 7.0测试版中对PHP语言最新版的支持,JetBrains没让大家失望,PhpStorm 7.0正式版本中,最大的变 ...

  9. Andorid类似Fragment更换布置方法

    public void replaceRightView(View v) { int f = LinearLayout.LayoutParams.MATCH_PARENT; LinearLayout. ...

  10. 如何优雅的研究 RGSS3 (七) 加入LOGO屏幕

    对于游戏 LOGO 屏幕. 首先设计 LOGO Scene类.我们知道,现场类 Scene_Base 子类. 让我们回顾一下现场的作品. 首先运行开始处理.其次是开始治疗.然后停止更新屏幕,最后,治疗 ...