Мои несколько строк кода отлично работают при тестировании в консоли Google Chrome, но не на моей странице, размещенной в нижнем колонтитуле, при загрузке на сервер.
Я хочу найти селекторы <li> либо для English, либо для Deutsch, и при нажатии на них установить файл cookie с помощью Плагин JavaScript для файлов cookie:
$(document).ready(function() {
$("li:contains('English')").on("click", function() {
Cookies.set('language', 'en', {
expires: 365
});
location.reload();
});
$("li:contains('Deutsch')").on("click", function() {
Cookies.set('language', 'de', {
expires: 365
});
location.reload();
});
});
РЕШЕНО! У меня был код вне функции $(document).ready(function() {});! Извините за потраченное время, но спасибо за помощь!
Может быть, ваш скрипт загружается до того, как элементы существуют в DOM? Попробуйте console.info что-нибудь в своих обработчиках кликов, чтобы увидеть, вызываются ли они вообще.
@RoryMcCrossan, потому что файлы cookie не сохраняются и страница не перезагружается. :( Понятия не имею, так как я не получаю никаких ошибок в консоли Google Chrome.
console.info что-то в ваших обработчиках кликов, чтобы увидеть, вызываются ли они вообще... Боже! Мне так жаль тратить ваше время! Были ли строки js за пределами моего `$(document).ready(function() {}); Извините, но дело закрыто!
В этом случае я бы предложил удалить вопрос, поскольку это была типографская проблема, которая не поможет будущим посетителям.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Ваш код выглядит хорошо в изоляции. Проверьте консоль на наличие ошибок. Почему вы считаете, что это не работает? Как вы снова читаете куки?