[英]jQuery to animate div based on time
I am displaying Prayer time in div tag and i want to animate this particular div if is 15 - 20 minutes close to prayer time. 我在div标签中显示祷告时间,如果距离祷告时间15至20分钟,我想为这个特定的div设置动画。
<div class="pt-time"><b>Fajr</b><br> <span id="ContentPlaceHolder1_lblFajrTime">04:48</span></div> </div>
<div class="pt-circle"><div class="pt-time"><b>Dhur</b><br><span id="ContentPlaceHolder1_lblDhurTime">12:19</span></div></div>
<div class="pt-circle"><div class="pt-time"><b>Asr</b><br><span id="ContentPlaceHolder1_lblAsrTime">15:43</span></div></div>
<div class="pt-circle"><div class="pt-time"><b>Magrib</b><br><span id="ContentPlaceHolder1_lblMagribTime">18:19</span></div></div>
<div class="pt-circle"><div class="pt-time"><b>Isha</b><br><span id="ContentPlaceHolder1_lblIshaTime">19:49</span></div></div>
Let us say I want to animate the border of the second circle from 12:00 - 12:19
. 假设我想为12:00 - 12:19
的第二个圆的边界设置动画。
Just to mention prayer time changes every day by at-least 1 minutes. 只需说每天祷告时间至少要改变1分钟。
I made a small fork from your pen: http://codepen.io/Saar/pen/YyWVpW?editors=101 我用笔造了一个小叉子: http : //codepen.io/Saar/pen/YyWVpW?editors=101
basically this is the code (for 20 min or less, it runs every 5 min): 基本上,这是代码(在20分钟或更短的时间内,每5分钟运行一次):
var interval = setInterval(function(){
var currentTime = Date.now();
$(".pt-time>span").each(function(idx){
var prayerTimeString = $(this).text();
var prayerTime = new Date();
var times = prayerTimeString.split(":");
prayerTime.setHours(times[0]);
prayerTime.setMinutes(times[1]);
var timeOfPrayerInMs = prayerTime.getTime();
var timeDif = timeOfPrayerInMs- currentTime;
if(timeDif <= 20*1000*60 && timeDif > 0){
$(this).closest(".pt-circle").addClass("closePrayerTime");
}
else{
$(this).closest(".pt-circle").removeClass("closePrayerTime");
}
});
},1000*60*5);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.