La idea básica es que cada vez que alguien visita el sitio web, la cookie guarda la hora y la fecha. Si el usuario visita el sitio web varias veces, la cookie solo muestra la fecha y la hora en que el usuario visitó por última vez. En este momento tengo el siguiente código que funciona, pero obviamente siempre actualiza la fecha y la hora:
var today = new Date(); var date = today.getDate()+'-'+(today.getMonth()+1)+'-'+today.getFullYear(); var time = today.getHours()+':'+today.getMinutes()+':'+today.getSeconds(); var dateTime = date+' at '+time; document.cookie ='last_visit='+ dateTimeEditar: para otras personas que puedan necesitar ayuda, el siguiente código parece funcionar:
var today = new Date(); var date = today.getDate()+'-'+(today.getMonth()+1)+'-'+today.getFullYear(); var time = today.getHours()+':'+today.getMinutes()+':'+today.getSeconds(); var dateTime = date+' at '+time; function getCookieValue(a) { const b = document.cookie.match('(^|;)\\s*' + a + '\\s*=\\s*([^;]+)'); return b ? b.pop() : ''; } console.log ("getCookieValue " + getCookieValue("last_visit")); document.cookie ='last_visit='+ dateTimeNo puede compartir datos visitados entre usuarios en las cookies sin recibir datos del servidor.
La solución es guardar el DateTime de la última visita en la base de datos y enviarlo al cliente.