У меня есть этот скрипт ниже, используемый на этом сайте http://ronnidc.dk. ..
Когда пользователь проверяет, например, [янв] точка появляется на карте ниже. И когда пользователь щелкает точку, под картой появляется тизер, содержащий ссылку на дополнительную страницу. Это все работает как задумано.
Задача 1 :
Проблема в том, что пользователь возвращается на главную страницу по ссылке (history-1). После этого все флажки будут сняты, а точки и текст тизера вернутся к основанию. За исключением Firefox - он отлично работает в Firefox. Я предполагаю, что проблема как-то связана с перезагрузкой DOM во всех других браузерах, кроме Firefox? (Я хочу, чтобы флажок, точки на карте и выбранный текст тизера оставались видимыми, когда пользователь вернется на страницу с картой).
Как мне избежать этой проблемы? С какой-то функцией .live? (устарело в jQuery 1.7)
Задача 2 :
Когда пользователь проверяет [все], все флажки отмечаются как задумано. Но чтобы иметь смысл, флажок [Все] должен исчезнуть, когда один из других флажков снят. (Оставшиеся флажки должны оставаться отмеченными)
Как это можно сделать?
/**functions.js**/
$(document).ready(function () {
/* =Filtering - (mark the map with dots)
----------------------------------------------- */
$(function () {
$('#filtering :checkbox.checkall').click(function () {
$(this).parents('fieldset:eq(0)').find(':checkbox').attr('checked', this.checked);
});
$("#filtering :checkbox").attr('checked', null); //uncheck checkboxes on page reload in Firefox
$("#filtering :checkbox").click(function() {
$("#pageTeaser article mark").hide();
$("#filtering :checkbox:checked").each(function() {
$("." + $(this).val()).show();
});
});
});
/* =Teaser Show - (Showing teaser text when clicking the dot's)
----------------------------------------------- */
$('#pageTeaser article mark').click(function() {
$('#pageTeaser article .inner').hide();
$('#pageTeaser article .inner').removeClass('active');
$(this).siblings('.inner').show();
$(this).siblings('.inner').addClass('active');
});
});