Проблема в работе простого web приложения для визуализации исторической даты
решил создать простую таблицу, чтобы даты было проще запоминать и восстанавливать из памяти
в итоге наваял кое-что на js (http://date-visualisation.ip64.net/), но т.к. программист из меня хреновый - работает не так гладко, как хотелось :( при нажатии несколько раз подряд на разные числа, некоторые нажимаются со второго раза возможно проблема в toggle, но я не уверен буду благодарен, если попробуете разобраться :yes: скрипт для кнопок-чисел: $('.numb').toggle(function() { var col = this.parentNode.parentNode.id, previousActive = ''; previousActive = '#' + col + ' .block .numb.active'; $(previousActive).removeClass('active');; $(this).addClass('active'); }, function () { $(this).removeClass('active'); }); скрипт кнопки clear (снизу таблицы): $('#clear').click(function() { var id1 = '#c', id2 = '#b', id3 = '#n', result = ''; for (var i = 1; i < 5; i++) { for (var j = 1; j < 4; j++) { for (var k = 1; k < 4; k++) { result = id1 + i + ' ' + id2 + j + ' ' + id3 + k; $(result).removeClass('active'); } } } }); |
ну во-перных я открыл сайт, там у вас 2 раза был подключен jquery. сразу возникает вопрос - зачем?? убирайте..
второе. jquery - это мощная библиотека. и она очень хорошо справляется с данными задачами. а вы делайте половину работы вручную.. тоже возникает вопрос. зачем??)))) вот код: $(document).ready(function(){ //------------ var numb = $('.numb'); $(numb).click(function () { var isClass = $(this).hasClass('active'); $(this).parent().parent().find('.numb').removeClass('active'); if (!isClass) $(this).addClass('active'); }); $('#clear').click(function() { $(numb).removeClass('active'); }); //------------ }); думаю разница ощутима. сколько вы там налопатили и сколько я.. код мой то раза в 2 меньше и проще... а вот насчет того что где то что то не срабатывает с первого раза, честно я не нашел.. вроде работает норм |
Часовой пояс GMT +3, время: 17:39. |