在时间轴上定位条目
positioning entries on a timeline
你好,我有一个日历/日程安排在一个应用程序中,看起来类似于这个非常基本的例子,
| Jan | Feb | Mar | Apr | Jun | Jul | Aug | Sep | Oct | Nov | Dec |
项目# 1(从1月到3月中旬开始 ) ...............
Project #2 (Runs from mid march to early september) ..............................
项目标题下的点说明了项目的长度,我正在努力的是给条目左侧空白的正确值,以将项目推到正确的开始日期。
我能得到的数字是:
- 项目运行天数,
- 从2014年1月1日到项目第一天的天数。
- 日历中的总天数(日历运行时间为2014年1月至2019年12月)。
- 日历容器的宽度。
我想应该是这样的:
var remainder = number_of_days_in_calendar - this.model.get('num_days_from_year_start');
var decimal = remainder / number_of_days_in_calendar;
var marginLeft = decimal * 100 + "%";
但是这个返回的百分比太接近了,1月和8月之间几乎没有任何差异。
我用这个和成功地算出了项目长度,
var width = (parseInt(this.model.get('run_number_days')) / number_of_days_in_calendar) * 100;
this.$el.width(width + "%");
根据日历在屏幕上的总宽度计算页边距。
width = calendar width in pixels * decimal
如果我理解正确的话小数在你的计算中是指项目开始前的天数占日历中总天数的百分比。
假设我们有这些值
number_of_days_in_calendar = 365
day_when_project_started = 91
container_width = 365px
这就是我们如何计算左距
的位置((91 / 365) * 100) * (365px / 365) = margin-left: 24.93%
如果容器是,例如730px
宽,根据上面的公式,最终结果将是margin-left: 49.86%;
相关文章:
- CSS-如何定位内容数据标题
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- Java脚本时间添加
- 在Jquery detachment()和appendTo()之后定位元素
- 困在逻辑中试图定位动态的东西
- Json数据包含日期和时间格式
- 如何根据时间运行不同的脚本
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 在wordpress一定时间后更改自定义字段
- 更改angularjs中的日期-时间格式
- 将当前时间添加到我的页面上的特定部分
- 门户网站:当地时间有多有用
- 显示时间的脚本
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- 通过JSON&比较时间
- 引导日期时间选取器定位
- Javascript:如何定位过渡时间
- 如何从Android地理定位应用程序向Postgresql数据库发送准确的时间戳信息
- 在时间轴上定位条目
- 根据伦敦的时间重新定位