2013-06-19 5 views
0

Скажем, печенье называется «CountDracula» и содержит «1,2,3,4»JQuery - инициирующее событие, когда содержимое печенья изменить

Затем я использую некоторые функции JavaScript (который не был написан еще) изменить файл cookie на «2,3,4» или «1,2,3,4,99» (добавить или вычесть цифру)

Можете ли вы активировать событие, которое обновил файл cookie (без перезагрузки страницы) чтобы увидеть новое содержимое файла cookie, даже если он просто отправляет обновленное содержимое на консоль? По существу слушайте изменения в cookie.

Я просто хочу знать, возможно ли сделать событие, которое обнаруживает, что файл cookie изменился.

Обновление: так как мне нужна функция обновления файла cookie в любом случае, updateCookie(), я могу позвонить своему «cookieUpdated» коду. Но я надеялся, что такое событие поможет мне отладить функцию updateCookie(), так как я работал над этим сегодня, было бы здорово увидеть, как изменяются значения, проверяя, работает ли мой код. Может быть, Firebug имеет значение cookie? Теперь я имею в виду просто сделать предупреждение в моем updateCookie(), чтобы показать содержимое печенья: -/

+1

* «Или это нахмурилось?» * - По-моему, да. Вы не должны задавать вопрос, знаете ли вы, что можете добавить к нему больше, чтобы было легче ответить. Что касается вашего вопроса, события cookie не обновляются, но вы можете запускать пользовательские события в вашем методе JavaScript. – mekwall

+0

@MarcusEkwall это ответ, который я искал. Хотя мне трудно поверить. Является ли событие скрытым по соображениям безопасности? Так как мне нужна функция обновления файла cookie в любом случае, updateCookie(), я могу вызывать свой код «cookieUpdated». Но я надеялся, что такое событие поможет мне отладить функцию updateCookie(), поскольку я работал над этим сегодня. –

ответ

2

Вы можете создать пользовательское событие:

$(document).on('cookieUpdate', function(){ 
    //update menu, whatever 
}); 

и запустить его, как только вы изменили cookie:

$(document).trigger('cookieUpdate'); 
+0

Разве это не так, как вызов функции, называемой cookieUpdate(), есть ли какое-то преимущество? –

+1

Всё зависит. Если вы хотите, чтобы все сотрудники находились в одном месте, например. обновить меню, сохранить в БД, тогда вы можете просто инкапсулировать все в одну функцию и называть ее обновлением файлов cookie. В этом случае вы можете иметь столько разных подписчиков на это событие, сколько захотите. Они могут работать независимо. – claustrofob