Показать сообщение отдельно
  #1 (permalink)  
Старый 14.12.2020, 11:33
Новичок на форуме
Отправить личное сообщение для Arifureta Посмотреть профиль Найти все сообщения от Arifureta
 
Регистрация: 14.12.2020
Сообщений: 2

Скрипт работает только в FireFox
Добрый день, столкнулся с проблемой, что написанный скрипт корректно работает только в браузере FireFox.
В IE, Chrome не работает.
С чем это может быть связанно?
Если есть какие либо решения подскажите пожалуйста.
Можно исправлять прямо в скрипте представленном ниже.
Если не верно оформлено сообщение, то извините, первый раз обращаюсь.

Содержимое файла 3.html:

<?xml version="1.0" encoding="UTF-8"?>
<!--
Лабораторная работа №3
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Лабораторная работа №3</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<meta charset="UTF-8" />
</head>
<body onunload = "exit()">
<h1>Лабораторная работа №3</h1>
<div id="msg"></div>
<script src="3.js"></script>
</body>
</html>

Содержимое файла 3.js:

/*
* Лабораторная работа №3.
*/

function getCookie(name)
{
let matches = document.cookie.match(new RegExp(
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
return matches ? decodeURIComponent(matches[1]) : undefined;
}

var newLoadTime = new Date();

var s = getCookie('visitTime');

var visitTime = s && s !== "NaN"? Number.parseInt(s): 0;

s = getCookie('visitCounter');

var visitCounter = s? Number.parseInt(s): 0;

var msg = document.getElementById("msg");

if(visitCounter && visitTime)
{
var aver = Math.round(visitTime / visitCounter),
min = Math.trunc(aver / 60000),
sec = Math.trunc(aver % 60000 / 1000);
msg.innerHTML = "Среднее время Вашего присутствия на нашей странице "
+ min + " мин. " + sec + " сек.";
}
else msg.innerHTML = "Дорогой пользователь! \n\
Мы рады приветствовать Вас на нашей станице!";


function exit()
{
var newUnloadTime = new Date();
visitTime = visitTime + (newUnloadTime - newLoadTime);
visitCounter = visitCounter + 1;
document.cookie = "visitTime=" + visitTime + "; max-age=180";
document.cookie = "visitCounter="
+ visitCounter + "; max-age=180";
}
Ответить с цитированием