PHP, JS - Документирование и сохранение ДАТЫ / ВРЕМЕНИ для повторного появления после закрытия браузера - PullRequest
0 голосов
/ 01 марта 2020

В настоящее время у меня есть место, где я могу щелкнуть изображение, и оно вернет новое изображение, а в предыдущем элементе сетки оно вернет день и время, когда я щелкнул по нему.

Что я хочу иметь это НО, где я также могу видеть обновленное изображение и кликнул время после закрытия и повторного открытия браузера. - Какой самый простой / быстрый способ добиться этого?

Я чувствую, что добавление в свою базу данных будет шагом вперед, но если это то, что мне нужно сделать, как бы я go о сохранении и вывести время, основанное на времени, которое я нажимаю?

(Это не предназначенный для того, чтобы быть живым сайтом или для просмотра или использования другими, так что локальные быстрые исправления жизнеспособны).

foreach ($flavours as $key => $flavour) {
    echo "<div class='grid-container'>";
        echo "<div class='item7'><p id='p3'>Sylus: </p></div>";
        echo "<div class='item8'><img src='htts://i.i.com/k.jpg' onclick='cS(this)'  /></div>";
    echo "</div>";
}
function cS(element) {

    if (element.src == "htts://i.i.com/k.jpg") 
    {
        element.src = "http://i.i.com/v.jpg";
        var d = moment().format('dddd HH:mm');
        element.parentElement.previousElementSibling.firstChild.innerHTML = "Sylus: " + d;
    }
    else 
    {
        element.src = "htts://i.i.com/k.jpg";
        element.parentElement.previousElementSibling.firstChild.innerHTML = "Sylus: ";
    }
}

Ответы [ 2 ]

1 голос
/ 06 марта 2020

Попробуйте этот пример, используя localStorage. Это позволит найти элементы тега <p> в теле, а затем использовать каждый элемент для получения идентификатора для справки.

Я попытался использовать скрипку, но у сайта есть жалоба на безопасность с localStorage.

Скопируйте / вставьте этот код в файл, чтобы попробовать. Обратите внимание, что вам, вероятно, потребуется обновить ссылку moment.js в этом коде, чтобы она соответствовала вашему пути к файлу.

<!doctype html>
<html>
    <head>
    <title>localStorage example</title>
        <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
        <script src="moment.js"></script>
    </head>
    <body>
        <div class='grid-container'>
            <div class='item7'><p id='p0'>Sylus: </p></div>
            <div class='item8'><img src='htts://i.i.com/k.jpg' onclick='cS(this)'  /></div>
        </div>
        <div class='grid-container'>
            <div class='item7'><p id='p1'>Sylus: </p></div>
            <div class='item8'><img src='htts://i.i.com/k.jpg' onclick='cS(this)'  /></div>
        </div>
        <script>
        function cS(element) {
            var pTag = element.parentElement.previousElementSibling.firstChild;

            if (element.src == "htts://i.i.com/k.jpg") 
            {
                element.src = "http://i.i.com/v.jpg";
                var d = moment().format('dddd HH:mm');
                var pText = 'Sylus: ' + d;

                pTag.innertHTML = pText;

                // Set (save) a reference to browser localStorage
                localStorage.setItem(pTag.id, pText);
            }
            else 
            {
                element.src = "htts://i.i.com/k.jpg";
                pTag.innerHTML = "Sylus: ";

                // Remove the stored reference. (delete this if not needed)
                localStorage.removeItem(pTag.id);
            }
        }

        $(document).ready(function() {
            pElements = $('body').find('p').each(function(index, element) {
                // Get the localStorage items. The retrieved <p> elements,
                // we use their id value to reference the key in storage.
                storageItem = localStorage.getItem(element.id);

                if (storageItem) {
                   $('#' + element.id).text(storageItem);
                }
            });
        });
        </script>
    </body>
</html>

После нажатия на изображение (нужно заменить на что-то реальное), откройте веб-инспектор браузера. В интерфейсе щелкните вкладку Storage, а затем разверните Локальное хранилище в списке (см. изображение ниже) и выберите тестируемый файл.

Будут отображены пары ключ / значение. Ключи являются ссылками на идентификаторы тега <p>, и значение будет иметь строки с меткой-датой, такие как Sylus: Wednesday 22:28.

Когда вы увидите одну или две записи, установленные для хранилища, закройте а затем снова откройте вкладку браузера. Элементы <p> с датами должны быть перезагружены со своими значениями из хранилища.

Область локального хранилища браузера должна быть похожа на изображение ниже:

enter image description here

0 голосов
/ 01 марта 2020

сохранить в локальном хранилище или повара ie с эксп. дата слишком далека в будущем

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...