Witam chciałem zrobić takie coś gdzie jeżeli mam wpis na stronie np 10 marc to zamieni mi to na 2 months ago. Niestety funkcja z której korzystam nei działa mi. Natomiast u znajomego na linuxie wszystko ładnie chodzi. Czy ma ktoś z was jakiś pomysł co jest nie tak?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Pushy - Off-Canvas Navigation Menu Demo</title>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<script src="czasy.js"></script>
<link rel="stylesheet" href="css/normalize.css">
<script type="text/javascript">
$(document).ready(function()
{
var x=$("time:not(.formatted)");
$.each(x,function(k,v)
{
var y = $(v);
var d = new Date(y.html());
console.log(d.toISOString());
var z = d.toISOString().match(/(\d{1,4}-\d{2}-\d{2}).*?(\d{2}:\d{2})/);
-->/(\d{1,4}-\d{2}-\d{2})T(\d{Z}:\d{2})/
console.log(z);
y.attr("datetime", z[0] + " " + z[1]);
y.html(time_ago(y.html()));
y.addClass("formatted");
});
});
</script>
</head>
<body>
<div class="row">
<div class="col-sm-12 col-md-8">
<main role="main">
<hgroup role=”heading”>
<h1>LOREM</h1>
<h3>LOREM IPSUM</h3>
</hgroup>
<article role="article">
<header>
<h2>1.Sed nec ante</h2>
<p>Autor: Gosc1 | <time>10 marca, 2017 10:15:30 </time>
</header>
<section>
<div class="textmain">
Sed nec ante dictum, pretium arcu vitae, dapibus mi. Duis posuere pharetra ex. Donec id nibh ligula. Fusce at risus hendrerit, dapibus felis at, auctor dolor. Mauris non odio cursus, ultrices felis feugiat, mollis justo. Nunc bibendum iaculis metus, ullamcorper bibendum libero dictum laoreet. Curabitur non nisi urna. Suspendisse nec porttitor eros. Duis condimentum arcu ut rhoncus elementum. Phasellus convallis felis ultrices vulputate pellentesque. Aliquam tincidunt et sem vel semper. Aliquam erat volutpat. Etiam a bibendum lectus. Nulla tempus tristique imperdiet. Aenean sit amet fermentum ligula, convallis vehicula nulla.
</div>
</section>
</article>
</main>
</div>
</div>
</body>
</html>
function time_ago(time){
switch (typeof time) {
case 'number': break;
case 'string': time = +new Date(time); break;
case 'object': if (time.constructor === Date) time = time.getTime(); break;
default: time = +new Date();
}
var time_formats = [
[60, 'seconds', 1], // 60
[120, '1 minute ago', '1 minute from now'], // 60*2
[3600, 'minutes', 60], // 60*60, 60
[7200, '1 hour ago', '1 hour from now'], // 60*60*2
[86400, 'hours', 3600], // 60*60*24, 60*60
[172800, 'Yesterday', 'Tomorrow'], // 60*60*24*2
[604800, 'days', 86400], // 60*60*24*7, 60*60*24
[1209600, 'Last week', 'Next week'], // 60*60*24*7*4*2
[2419200, 'weeks', 604800], // 60*60*24*7*4, 60*60*24*7
[4838400, 'Last month', 'Next month'], // 60*60*24*7*4*2
[29030400, 'months', 2419200], // 60*60*24*7*4*12, 60*60*24*7*4
[58060800, 'Last year', 'Next year'], // 60*60*24*7*4*12*2
[2903040000, 'years', 29030400], // 60*60*24*7*4*12*100, 60*60*24*7*4*12
[5806080000, 'Last century', 'Next century'], // 60*60*24*7*4*12*100*2
[58060800000, 'centuries', 2903040000] // 60*60*24*7*4*12*100*20, 60*60*24*7*4*12*100
];
var seconds = (+new Date() - time) / 1000,
token = 'ago', list_choice = 1;
if (seconds == 0) {
return 'Just now'
}
if (seconds < 0) {
seconds = Math.abs(seconds);
token = 'from now';
list_choice = 2;
}
var i = 0, format;
while (format = time_formats[i++])
if (seconds < format[0]) {
if (typeof format[2] == 'string')
return format[list_choice];
else
return Math.floor(seconds / format[2]) + ' ' + format[1] + ' ' + token;
}
return time;
}