- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
让我解释一下:
我正在为一个音乐节开发一个基于 HTML5 的移动应用程序,该应用程序运行一周并且在任何给定时间都有多个事件,我想包含一个功能,该功能将已通过的事件显示为灰色。因此,如果音乐节从周一到周日举行,而现在是周二中午,那么周一的所有事件都将显示为灰色,周二中午之前结束的所有事件也将显示为灰色(以及当前在星期二中午将突出显示)。
该应用程序有多个页面和多种查看事件的方式,但在每种情况下,事件的详细信息都将包含在一个 div 中;
我正在寻找一种简洁的算法/技术来将 div(具有关联的日期时间)标记为过去、现在或 future
我考虑过的选项:
start="yyyy-mm-dd-hh-mm"
), 加载页面时,我使用 javascript 循环遍历所有 div,并查看开始- 和结束-* 类并添加“过去”、“现在”或“ future ”基于此的类,在 CSS 中,我只对这 3 个类进行了样式设置。伪 jQuery 代码(在页面加载时):
$('.tensed').each(function() {
$(this).removeClasses('past', 'present', 'future')
.addClass(myGetTenseClassForThisTimeFunc($(this).attr('start'));
}
我不喜欢这种方法的地方是需要使用代码来应用类,这会占用一些处理时间和能力,而且看起来笨重、笨拙
start-yyyy-mm-dd-hh-mm
和 end-yyyy-mm-dd-hh-mm
(例如 start-2015-10-13-10-43
).然后,以编程方式,我猜想的每一分钟,我都会为范围内所有可能的类调整样式。伪jQuery代码:
setTimeout( function() {
dt = getDateTimeAsTimestampFunc();
dt_start = getFestivalStartTime();
dt_end = getFestivalEndTime();
dt_loop = dt_start;
while(dt_loop<dt_end) {
if (dt_loop<dt) $(dt_loop).css(*make it greyedout*);
if (dt_loop==dt) $(dt_loop).css(*make it highlighted*);
incrementDateTimeByOneMinute(dt_loop);
}
}, 1000);
类似的东西 - 但开始和结束日期更智能一些。这不如第一个选项优雅。
我觉得一定有更优雅的方法来解决这个问题,但我没有想出比上述更好的方法——我对纯 CSS 解决方案最感兴趣< br/>请包含伪代码来解释您的答案...
最佳答案
第一个选项听起来很简单。可以排除过去的,并确保 past
类在它们最初呈现时就在它们上面。
使用 data-start
和 data-end
作为你的属性:
var minutesUpdate = 10;
function updateTimeClasses() {
var now = new Date();
$('.tensed').not('.past').each(function () {
var $el = $(this),
start = new Date($el.data('start')),
end = new Date($el.data('end')),
isOver = end > now,
isCurrent = start <= now && now <= end;
if (isOver || isCurrent) {
$el.toggleClass('present', isCurrent).toggleClass('past', isOver);
}
});
}
setInterval(updateTimeClasses, minutesUpdate * 60 *1000);
我真的不认为需要 future 的类(class),因为那将是您的默认样式
另一个建议是使用 timeUntil
函数来更新每个显示
关于javascript - CSS 指示 "tensed"-div 是过去、现在还是 future ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33092550/
我为我的 facebook 应用程序创建了一个自定义故事,我可以像这样使用 facebook js sdk 制作一个基本的故事帖子 FB.api( 'https://graph.facebook
我在今天修复数据库以获得一致的字段名称时感到困惑。 当我想命名字段来解释时:锁定或隐藏帖子的人的名字。我应该使用什么字段? locked_by_username , lock_by_username
让我解释一下: 我正在为一个音乐节开发一个基于 HTML5 的移动应用程序,该应用程序运行一周并且在任何给定时间都有多个事件,我想包含一个功能,该功能将已通过的事件显示为灰色。因此,如果音乐节从周一到
(注:我知道以前也有关于这个问题的帖子(例如,这里或这里,但它们都很老了,我认为NLP在过去几年里取得了相当大的进展。)。我正在尝试使用Python中的自然语言处理来确定句子的时态。。有没有简单易用的
我是一名优秀的程序员,十分优秀!