Heim  >  Artikel  >  Web-Frontend  >  So zeigen Sie die Zeit vor Minuten, Tagen usw. in javasctipt_javascript skills an

So zeigen Sie die Zeit vor Minuten, Tagen usw. in javasctipt_javascript skills an

WBOY
WBOYOriginal
2016-05-16 16:50:50981Durchsuche

jsp页面:

复制代码 代码如下:













Dies ist meine JSP-Seite.

${time}









复制代码 代码如下:

(function (factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Als anonymes Modul registrieren.
define([ 'jquery'], Factory);
} else {
// Browser globals
factory(jQuery);
}(function ($) {
$.timeago = function(timestamp) {
if (timestamp exampleof Date) {
return inWords(timestamp);
} else if (typeof timestamp === "string") {
return inWords($.timeago .parse(timestamp));
} else if (typeof timestamp === "number") {
return inWords(new Date(timestamp));
} else {
return inWords($ .timeago.datetime(timestamp));
}
};
refreshMillis: 60000,
allowFuture: false,
localeTitle: false,
cutoff: 0,
strings: {
prefixAgo: null,
prefixFromNow: null,
suffixAgo: „前“,
suffixFromNow: „von jetzt an“,
Sekunden: „1分钟“,
Minute: „1分钟“,
Minuten: „%d分钟“,
Stunde: „1小时“,
Stunden: „%d小时“,
Tag: „1天“,
Tage: „%d天“,
Monat: „1月“,
Monate: „%d月“,
Jahr: „1年“,
Jahre: „%d年“,
Worttrennzeichen: „“,
Zahlen: []
}
},
inWords: function(distanceMillis) {
var $l = this.settings.strings;
var prefix = $l.prefixAgo;
var suffix = $l.suffixAgo;
if (this.settings.allowFuture) {
if (distanceMillis < 0) {
prefix = $l.prefixFromNow;
suffix = $l.suffixFromNow;
}
}

var seconds = Math.abs(distanceMillis) / 1000;
var Minuten = Sekunden / 60;
var Stunden = Minuten / 60;
var Tage = Stunden / 24;
var Jahre = Tage / 365;

function replacement(stringOrFunction, number) {
var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction;
var value = ($l.numbers && $l.numbers[number]) || Nummer;
return string.replace(/%d/i, value);
}

var Wörter = Sekunden < 45 && replacement($l.seconds, Math.round(seconds)) ||
Sekunden < 90 && replacement($l.minute, 1) ||
Minuten < 45 && replacement($l.minutes, Math.round(minutes)) ||
Minuten < 90 && replacement($l.hour, 1) ||
Stunden < 24 && replacement($l.hours, Math.round(hours)) ||
Stunden < 42 && replacement($l.day, 1) ||
Tage < 30 && replacement($l.days, Math.round(days)) ||
Tage < 45 && replacement($l.month, 1) ||
Tage < 365 && replacement($l.months, Math.round(days / 30)) ||
Jahre < 1.5 && replacement($l.year, 1) ||
substitute($l.years, Math.round(years));

Var Separator = $l.wordSeparator || „“;
if ($l.wordSeparator === undefiniert) { Separator = " "; }
return $.trim([Präfix, Wörter, Suffix].join(separator));
},
parse: function(iso8601) {
var s = $.trim(iso8601);
s = s.replace(/.d /,""); // Millisekunden entfernen
s = s.replace(/-/,"/").replace(/-/,"/");
s = s.replace(/T/," ").replace(/Z/," UTC");
s = s.replace(/([ -]dd):?(dd)/," $1$2"); // -04:00 -> -0400
neue(s) Datum(e) zurückgeben;
},
datetime: function(elem) {
var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title");
return $t.parse(iso8601);
},
isTime: function(elem) {
// „is()“ von jQuery funktioniert nicht gut mit HTML5 im IE
return $(elem).get(0).tagName .toLowerCase() === "time"; // $(elem).is("time");
}
});

// Funktionen, die über $(el).timeago('action') aufgerufen werden können
// init ist Standard, wenn keine Aktion angegeben ist
// Funktionen werden mit dem Kontext von a aufgerufen einzelnes Element
var Functions = {
init: function(){
var restart_el = $.proxy(refresh, this);
refresh_el();
var $s = $t.settings;
if ($s.refreshMillis > 0) {
setInterval(refresh_el, $s.refreshMillis);
}
},
update: function(time){
$(this).data('timeago', { datetime: $t.parse(time) });
refresh.apply(this);
},
updateFromDOM: function(){
$(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr ("datetime") : $(this).attr("title") ) });
refresh.apply(this);
}
};

$.fn.timeago = function(action, options) {
var fn = action ? Funktionen[Aktion]: Funktionen.init;
if(!fn){
throw new Error("Unknown function name '" action "' for timeago");
}
// jeweils über Objekte hier und rufen Sie die angeforderte Funktion auf
this.each(function(){
fn.call(this, options);
});
dies zurückgeben;
};

function restart() {
var data = PrepareData(this);
var $s = $t.settings;

if (!isNaN(data.datetime)) {
if ( $s.cutoff == 0 || distance(data.datetime) < $s.cutoff) {
$( this).text(inWords(data.datetime));
}
}
dies zurückgeben;
}

function PrepareData(element) {
element = $(element);
if (!element.data("timeago")) {
element.data("timeago", { datetime: $t.datetime(element) });
var text = $.trim(element.text());
if ($t.settings.localeTitle) {
element.attr("title", element.data('timeago').datetime.toLocaleString());
} else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) {
element.attr("title", text);
}
}
return element.data("timeago");
}

function inWords(date) {
return $t.inWords(distance(date));
}

function distance(date) {
return (new Date().getTime() - date.getTime());
}

// Fehlerbehebung für IE6-Fehler
document.createElement("abbr");
document.createElement("time");
}));

Controller层:
复制代码 代码如下:

Paket com.spring.controller;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import com.spring.model.JsonMoel;
import com.sun.org.apache.bcel.internal.generic.NEW;

/**
* @author Qixuan.Chen
* Erstellungszeit: 29.04.2014
*/
@Controller
public class TimeAgoController {


/**
* @param-Anfrage
* @param-Antwort
* @return
* @throws IOException
*/
@RequestMapping(value = "time/show", method = {RequestMethod.POST,RequestMethod.GET})
public ModelAndView PostJsonTest(HttpServletRequest request,HttpServletResponse Response) löst eine IOException aus{

ModelAndView mav=new ModelAndView();
mav.addObject("time", new Date());
mav.setViewName("time/timeago");
return mav;
}

}
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn