网页前端,模仿微信朋友圈发表时间

By admin in 4858.com on 2019年4月8日

依样画葫芦微信朋友圈发表时间,使用扩张方法将将过去时间呈现成xx(秒/分/小时/天)前,以留言列表中的留言时间为例,先来看一下直接的时光呈现效果(date.ToString(“yyyy/MM/dd
HH:mm:ss”))

效仿微信朋友圈公布时间,将过去日子格式化成xx(秒/分/小时/天)前,朋友圈时间格式

效仿微信朋友圈发表时间,使用增加方法将将过去时间显示成xx(秒/分/小时/天)前,以留言列表中的留言时间为例,先来看一下直接的年月展现效果(date.ToString(“yyyy/MM/dd
HH:mm:ss”))

4858.com 1

倍感很壹般,未有啥样尤其

上面 大家写一位作品展开药方法,将留言时间格式化成xx(秒/分/时辰/天)前

decimal.Truncate(data)//取decimal整数位

public static class HtmlExpansion
{   //只格式化2天内的时间
    public static string AgoDateFomat(this DateTime date)
        {
            var times = DateTime.Now - date;
            var s = Convert.ToDecimal(times.TotalSeconds);//秒
            var m = Convert.ToDecimal(times.TotalMinutes);//分钟
            var h = Convert.ToDecimal(times.TotalHours);//小时
            var d = Convert.ToDecimal(times.TotalDays);//天

            return s < 60 ? "" + decimal.Truncate(s) + " 秒前" : m < 60 ? "" + decimal.Truncate(m) + " 分钟前" : h < 24 ? "" + decimal.Truncate(h) + " 小时前" : d < 2 ? "" + decimal.Truncate(d) + " 天前" : date.ToString("yyyy/MM/dd HH:mm:ss");
        }
}

直白在date后面调用date.AgoDateFomat(),体现效果如下

4858.com 2

效果图

4858.com 3

是否感到比此前的时间高大上了少数

====完===

模仿微信朋友圈发布时间,使用扩张方法将将过去时…

效仿微信朋友圈宣布时间,使用扩充方法将将过去时间体现成xx(秒/分/时辰/天)前,以留言列表中的留言时间为例,先来看一下直接的小时展现效果(date.ToString(“yyyy/MM/dd
HH:mm:ss”))

一、时间戳展现

不时能够看到论坛或许消息上,时间戳为刚刚,xx分钟前,xx时辰前等字样,前端如何落到实处吗?

4858.com 4

 

4858.com 5

4858.com 6

二、时间戳实现

以此职能相比较不难,直接上函数,time_网页前端,模仿微信朋友圈发表时间。str是时刻戳的字符串结果,转换到Date对象,

Date对象能够获得年月日等新闻,new1个Date表示近来时间,相关信息进行相比过后,定制重临结果即可。

 

//时间处理函数,多少分钟前,多少小时前,超越二四钟头展现日期,超过一年显示年月日
        getTimeShow:function(time_str){
            //debugger;
            var now = new Date();
            var date = new Date(time_4858.com,str);
            //总计时间间隔,单位为分钟
            var inter = parseInt((now.getTime() –
date.getTime())/1000/60);
            if(inter == 0){
                return “刚刚”;
            }
            //多少分钟前
            else if(inter < 60){
                return inter.toString() + “分钟前”;
            }
            //多少时辰前
            else if(inter < 60*24){
                return parseInt(inter/60).toString() + “小时前”;
            }
            //本年度内,日期区别,取日期+时间  格式如  06-一三 22:1一
            else if(now.getFullYear() == date.getFullYear()){
                return (date.getMonth()+1).toString() + “-” +
                    date.getDate().toString() + ” ” +
                    date.getHours() + “:” +
                    date.getMinutes();
            }
            else{
                return date.getFullYear().toString().substring(2, 3) +
“-” +
                (date.getMonth()+1).toString() + “-” +
                date.getDate().toString() + ” ” +
                date.getHours() + “:” +
                date.getMinutes();
            }
        },

 

 

感觉很相像,未有什么样特别

感觉到很相像,未有何尤其

3、实现效益

 

4858.com 7

上面 大家写1个开始展览方法,将留言时间格式化成xx(秒/分/小时/天)前

上面 大家写两个实行方法,将留言时间格式化成xx(秒/分/时辰/天)前

decimal.Truncate(data)//取decimal整数位

decimal.Truncate(data)//取decimal整数位

public static class HtmlExpansion
{   //只格式化2天内的时间
    public static string AgoDateFomat(this DateTime date)
        {
            var times = DateTime.Now - date;
            var s = Convert.ToDecimal(times.TotalSeconds);//秒
            var m = Convert.ToDecimal(times.TotalMinutes);//分钟
            var h = Convert.ToDecimal(times.TotalHours);//小时
            var d = Convert.ToDecimal(times.TotalDays);//天

            return s < 60 ? "" + decimal.Truncate(s) + " 秒前" : m < 60 ? "" + decimal.Truncate(m) + " 分钟前" : h < 24 ? "" + decimal.Truncate(h) + " 小时前" : d < 2 ? "" + decimal.Truncate(d) + " 天前" : date.ToString("yyyy/MM/dd HH:mm:ss");
        }
}
public static class HtmlExpansion
{   //只格式化2天内的时间
    public static string AgoDateFomat(this DateTime date)
        {
            var times = DateTime.Now - date;
            var s = Convert.ToDecimal(times.TotalSeconds);//秒
            var m = Convert.ToDecimal(times.TotalMinutes);//分钟
            var h = Convert.ToDecimal(times.TotalHours);//小时
            var d = Convert.ToDecimal(times.TotalDays);//天

            return s < 60 ? "" + decimal.Truncate(s) + " 秒前" : m < 60 ? "" + decimal.Truncate(m) + " 分钟前" : h < 24 ? "" + decimal.Truncate(h) + " 小时前" : d < 2 ? "" + decimal.Truncate(d) + " 天前" : date.ToString("yyyy/MM/dd HH:mm:ss");
        }
}

直接在date后边调用date.AgoDateFomat(),体现效果如下

一贯在date后边调用date.AgoDateFomat(),体现效果如下

4858.com 8

4858.com 9

效果图

效果图

4858.com 10

4858.com 11

是否觉得比此前的光阴高大上了几许

是还是不是感觉比在此以前的大运高大上了一些

====完===

====完===

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有