HTML
<td title='10:00 AM-wed 09-01-2013'><div style="position:relative;height:60px">
<div style="position:absolute;top:00px;" class='entry'>Demo patient</div>
<div style="position:absolute;top:20px;" class='entry'>New patient</div>
<div style="position:absolute;top:40px;" class='entry'>fool patient</div>
</div></td>
图片
用于生成条目的 PHP
echo"<div style='position:absolute;top:".date("i", strtotime($data['time_booked']))."px;'>{$data['name']}</div>";
我做了一个简单的 jquery/php 日程安排(日历),如上所示。
如您所见,我有父 div 高度:60px(每分钟 1px)和相对位置,然后我根据其最小值定位子 div 绝对值(例如:演示患者是 10:00 所以顶部:00px,傻瓜患者是 10:40 所以它的顶部:40px)。这工作正常,除非有重叠的时间。例如,如果我同时有 2 个条目,那么两者将被放置在彼此之上。
问题我怎样才能避免这种情况?像谷歌日历一样,如果存在 2 个预订,它们会并排移动,而不是彼此重叠。
谢谢
问题解决了:
使用这个插件和下面的代码
var n=$('div.entry').overlaps().length;var vol=(100/n);var round=0;
$('div.entry').overlaps().each(function(){
$(this).css('left',((vol-1)*round)+'%');
$(this).css('width',(vol-n)+'%')
round=round+1;
});
现在它可以完美地作为谷歌日历工作:D .. 谢谢大家