2016-04-20 2 views
-1

Я устанавливаю переменную в локальном хранилище, когда мой сайт загружен. Теперь я хочу удалить эту переменную только после закрытия всех вкладок моего веб-сайта.Как проверить, что все вкладки определенного сайта закрыты

Например, я открываю домашнюю страницу на одной вкладке, в то время я устанавливаю переменную в локальном хранилище. После этого я открываю деталь продукта на другой вкладке. На этот раз нет необходимости снова устанавливать переменную, поскольку она уже установлена. Теперь, если я закрою все вкладки (домашняя страница, страница сведений о продукте), тогда только переменная должна быть удалена из локального хранилища.

Есть ли какой-нибудь подход, который я могу попробовать? Пожалуйста, предложите.

+0

Пожалуйста, покажите нам, что вы пробовали –

ответ

0

Моя идея состоит в том, чтобы прирастить целое число в вашем локальном хранилище каждый раз, когда онлен. Так что все будет близко, когда значение вернется к 1

0

Простой ответ, вы не может. Или, точнее, HTTP - это протокол без учета состояния, то есть вы не можете сказать, закрыл ли пользователь вкладку своего браузера или просто ничего не делал.

Есть, однако, трюки, которые вы можете использовать для определения количества вкладок, открытых пользователем. Одним из примеров является сохранение счетчика табуляции, хранящегося в локальном хранилище пользователя, и увеличение его на каждую нагрузку на страницу, а также уменьшение его на странице разгрузки, например, @martin karl.

Вы можете использовать JQuery unload, чтобы обнаружить, когда пользователь закрывает вкладку. Устаревший с JQuery 1.8.

Теперь вы можете использовать событие beforeunload.

Смежные вопросы