2017-01-26 2 views
0

Comment puis-je obtenir timeAgo de horodatage dans jquery et l'afficher comme un simple, infobulle?infobulle jQuery afficher timeAgo de timestamp unix

J'ai trouvé ce http://timeago.yarp.com/ ce qui n'est pas exactement ce que je veux. Ce que je cherche est de mettre l'horodatage comme disons data-ts="timestamp" et puis quand l'utilisateur passe le texte, une info-bulle est affichée comme "1 jour, 3 heures". NB: L'info-bulle n'est pas destinée à être une chose spéciale, seule l'info-bulle système par défaut qui montre l'attribut title est suffisante.

+1

Ne serait-il pas préférable d'utiliser une fonction côté serveur pour convertir un horodatage en "timeAgo" et l'ajouter en tant qu'attribut de l'élément et simplement l'afficher dans l'info-bulle? –

+0

Oui je peux le faire et je l'ai déjà fait mais dans cette situation particulière je veux que ce soit avec jQuery pour être en temps réel – medk

Répondre

1

Alors que vous avez mentionné que ce n'est pas exactement ce que vous voulez, vous pouvez utiliser timago.yarp.com pour y parvenir. Il y a une possibilité d'utiliser par programmation:

jQuery.timeago(new Date());    //=> "less than a minute ago" 
jQuery.timeago("2008-07-17");   //=> "9 years ago" 
jQuery.timeago(jQuery("time#some_id")); //=> "9 years ago"  // [title="2008-07-20"] 

Par exemple:

$('.element-with-tooltip').hover(function(){ 
$(this).attr('data-timeago', $.timeago($(this).attr('data-ts'))); 
}); 

Une meilleure approche serait d'ajouter comme un rappel de la fonction info-bulle (plugin) qui retourne la sortie « timeago » à afficher dans l'info-bulle.