Если ты об анализе кода - то в исходнике-генераторе его немало, он завязан на цикличности и просто нумерует все. Чтобы никак не зависеть от количества заданных вопросов и прочего. К тому же в приведенном примере только 1 вариант вопросов, по умолчанию же будет использовано 4 разных типа, у всех свои особенности (например, с подвопросами и прочим), отчего приходится идти на эту порнографию. (Добавление)
Нельзя забывать, что в одном вопросе может быть 5 вариантов ответов, а может быть и 40 (увы, такое тоже предусмотрено).
И тогда верхние кнопки позволяют маневрировать быстрее, пропуская сложные вопросы, оставляя их на "потом". Ибо до нижней еще надо "домотать вниз", а время то идет (впрочем, это будет зависеть от создателя варианта теста - может и не ограничивать время).
Юзабельность то проверена, работать программе придется не только среди знающих компьютер, но и среди людей, минимально понимающих (лет так за 50 и старше), так что пытался максимально упростить...
Можно и на этом остановиться, но как всегда, "хочется большего".
Да и мне (врачу) тоже не помешает подучиться программировать (а то что то забывать стал), как оно было в молодости (в 80-е прошлого века). (Добавление)
И ЗЫ:
Подскажите, тогда, как мне в JQ сделать запрос CSS именно на
input.bordered {
border: solid 3px #f00;
}
, а не на
input {
border: solid 3px #f00;
}
Ведь запрашиваю то я ID всего инпута.
Я сделаю страшнее.
Вот временная ссылка на результат.
Странное поведение одного из скриптов в гуглоботе (не показывает избыток выбранных вопросов), в Опере все работает. В эксплорере вроде все работает. А нет, вру, в Осле тоже не работает скрипт проверки количества выделенных вопросов.
Приводит к тому, что вместо кнопки показывается просто прямоугольник, который сливается с соседними, у которых такое уже сделано.
Можно как то сбросить внешний вид инпут-баттона до его обычного вида, не уничтожая реальный элемент (подразумеваю, чтобы не удалять кнопку скриптом и создавать ее заново?) (Добавление)
ЗЫ. Я имею ввиду - можно ли СБРОСИТЬ стили, чтобы браузер снова показывал "неизмененную" кнопку в своем стиле? А то писать стили еще и под кнопки, когда они вполне удовлетворяют в виде "по умолчанию" как то не хочется.
Используется в тестах, где каждый вопрос имеет ответы, у каждого - свой класс, соответственно пронумерованный (а в классе - от 2 до 50 элементов-ответов).
DelphinPRO пишет:
ну обычно это делается так
Ты как всегда прав. Действительно, увеличил длину основного имени класса для уменьшения совпадения в будущем, получил (условно класс теперь aaa1-1000):
- все сработало, как надо. Это значительно сократило размер страницы, которую генерирует программа тестирования (так как ранее это было всунуто в каждый элемент).
Автоматом генерируется контент, в котором множество пунктом, имеющих такое построение:
У каждой группы указан класс:
class='a1' a2 и т.д., вплоть до возможных a999 a1000
Как им всем назначить стиль через CSS, не объявляя каждый класс?
Кроме того, не нужно вешать событие на клик, следует прослушивать onchange у инпута.
Именно из за этого весь гемор - если в эксплорере я кликаю НА лэйбле - он НЕ МЕНЯЕТ вложенный в него чекбокс, он его меняет толкьо при прямом клике на чекбоксе. Так что никакого ончейнджа не срабатывает, пока я не кликану напрямую по чеку.
Опера и Гуглобот - меняют.
Мелкий пишет:
The label element may contain at most one descendant input element, button element, select element, or textarea element.
Вот-вот... (Добавление)
Йо, Эксплорер проглотил for и заработал. Гигантское спасибо!
Чегой то я был не в курсе
Останавливать таймер по OnUnload() и сохранять на сервере его значение аяксом, например, чтобы при последующем входе запустить его снова с сохраненного значения.
Ну как бы тебе сказать.
Для начала надо хоть чуток почитать, чем отличается СЕРВЕР от РЕДАКТОРА.
Как редактор очень рекомендую notepad++ (ИМЕННО С ++, а не нотепад винды!!!)
Создай в любом редакторе свой файлик и сохрани его под именем index.php в КОРНЕВУЮ папку САЙТА (у денвера не помню, но у большинства - это папка WWW в папке, куда установлен сервер (денвер).
Вроде же как только сессия первого прерывается, ее файл удаляется из временной папки сервера и хоть ты завводись его повторно - он не будет принят сервером как "уже использованный".
Для облегчения отмечания чекбоксов каждый из них помещен в <label>, что позволяет отмечать чекбокс, тыкая не только в саму коробочку, но и на любую часть текста в лэйбле.
Это работает везде, кроме, конечно, осла. В Эксплорере чекбокс плюет на лэйбл и отмечается ТОЛЬКО при кликании на коробочку чекбокса.
Из-за этого пришлось на лэйбл повесить событие "onclick", которое запускает скрипт, инвертирующий значение чекбокса (был отмечен - снимает, был не отмечен - ставит "cheсked")
Но тут всплыла неприятность - если лэйбл захватывает чекбокс, то в результате получаем некий баг:
1. Если кликать по лэйблу - все срабатывает и отмечается как надо.
2. если кликать по самому чекбоксу - он сначала ОТМЕЧАЕТ его, далее срабатывает событие на онклик-лэйбла и метка СНИМАЕТСЯ.
К сожалению, вынести лэйбл ЗА границы чекбокса нельзя (точнее - нежелательно), так как кликнуть могут как ДО чекбокса, так и после него (на тексте).
Как заблокировать повторную обработку, если чекбокс лежит внутри лэйбла, на котором висит онклик?
Хм, вы, батенька, знаете толк в извращениях. Ладно бы на сервере, но уж дома то, да еще под виндой, можно было воспользоваться готовыми сборками, над которыми потом и поиздеваться в настройках не грех.
Лично использую VertrigoServ, раньше был Денвер (не понравился некоторыми глюками).
Или вы просто учитесь "настраивать"? тогда, имхо, все равно лучше взять готовый и разбираться на его примере.