Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Динамическая загрузка вопросов для теста (https://javascript.ru/forum/dom-window/33197-dinamicheskaya-zagruzka-voprosov-dlya-testa.html)

a_l 13.11.2012 22:54

Маэстро, без обид, но такой код хорошо подойдёт к этой теме:
http://javascript.ru/forum/offtopic/...bydlokoda.html
Для 300 вопросов будет 596 лишних кнопок!
Dimaz, а зачем кнопке далее исчезать на последнем вопросе? Пользователь ведь должен как-то сообщить, что выбрал последний ответ. Или у вас ещё одна кнопка есть? Про кнопку назад вы не писали:) Тогда нужно добавить обработчик и к ней:
var i = 0,
    questions = document.getElementsByTagName('p');
document.getElementById('right').onclick = function() {
  if(i === questions.length - 1) {
    this.style.display='none';
    return false;
  }
  questions[i].style.display='none';  
  i++;
  questions[i].style.display='block';
}
document.getElementById('left').onclick = function() {
  if(i === 0) {
    return false;
  }
  questions[i].style.display='none';  
  i--;
  questions[i].style.display='block';
  if(i === 0) {
    this.style.display='none';
  }
}​
​

Маэстро 14.11.2012 12:43

Цитата:

Сообщение от a_l
Маэстро, без обид, но такой код хорошо подойдёт к этой теме:
Быдлокод (тут собираем примеры быдлокода)
Для 300 вопросов будет 596 лишних кнопок!

1. Быдлокодом каждый может назвать всё, что угодно (в меру своей воспитанности или наоборот).
2. Почему Вы решили, что вопросов будет 300, а не 3000? а я думаю, что их будет 5! Кстати, как я писал, если не нравятся кнопки - используйте <A></A>
3. Я показал альтернативное решение, которое для людей хорошо знающих PHP, но слабо знающих javascript зачастую быстрее реализуемо.
4. На очень многих сайтах (обычно в социальных сетях) рядом с КАЖДЫМ сообщением есть кнопка "Удалить", "Ответить" и т.п. Вот это плохо! Вот это бы я назвал быдлодизайном! То есть, например, сайт vkонтакте.com - это сплошное быдло-лалала?? Лично я всегда осуждал такой дизайн, однако его делают. Не знаете почему? Одна из причин - рассчитано на быдлоюзера, который не найдет кнопку "Отправить" в меню где-то вверху панели. Ему надо пририсовать эту кнопочку ряяяяядом с текстом. Да простят меня грамотные пользователи!
5. В моем варианте используемые кнопки не видны все одновременно на экране, т.к. виден только 1 параграф (с двумя кнопками). И если их и 596, то Вы считайте не их абсолютное количество, а процент их текста по отношению к тексту вопросов. Если в каждом параграфе с десяток строк HTML-кода, то добавка ещё одной (одиннадцатой) строчки солнце не остановит.

a_l 14.11.2012 19:48

Цитата:

Сообщение от Маэстро (Сообщение 215898)
1. Быдлокодом каждый может назвать всё, что угодно (в меру своей воспитанности или наоборот).
3. Я показал альтернативное решение, которое для людей хорошо знающих PHP, но слабо знающих javascript зачастую быстрее реализуемо.

Достаточно точная характеристика быдлокода - не зная основ языка, пытаться быстро наваять непонятно что. А потом, скажем, захочется добавить прогрессбар - ещё кучу лапши добавлять в атрибут? Хотя подозреваю, вы ответите, что нужно всего-то немного дописать цикл пэхэпэ...
Цитата:

Сообщение от Маэстро (Сообщение 215898)
2. Почему Вы решили, что вопросов будет 300, а не 3000? а я думаю, что их будет 5! Кстати, как я писал, если не нравятся кнопки - используйте <A></A>

Даже если 5, этот способ совсем не элегантен.
Цитата:

Сообщение от Маэстро (Сообщение 215898)
4. На очень многих сайтах (обычно в социальных сетях) рядом с КАЖДЫМ сообщением есть кнопка "Удалить", "Ответить" и т.п. Вот это плохо! Вот это бы я назвал быдлодизайном! То есть, например, сайт vkонтакте.com - это сплошное быдло-лалала?? Лично я всегда осуждал такой дизайн, однако его делают. Не знаете почему? Одна из причин - рассчитано на быдлоюзера, который не найдет кнопку "Отправить" в меню где-то вверху панели. Ему надо пририсовать эту кнопочку ряяяяядом с текстом. Да простят меня грамотные пользователи!

Не путайте тёплое с мягким. В случае vk это повышает юзабилити. В случае же этого теста это никак на юзабилити не влияет.
Цитата:

Сообщение от Маэстро (Сообщение 215898)
5. В моем варианте используемые кнопки не видны все одновременно на экране, т.к. виден только 1 параграф (с двумя кнопками). И если их и 596, то Вы считайте не их абсолютное количество, а процент их текста по отношению к тексту вопросов. Если в каждом параграфе с десяток строк HTML-кода, то добавка ещё одной (одиннадцатой) строчки солнце не остановит.

Это не просто строчка, этой новый элемент DOM. И если он не виден, это не означает, что он не влияет на производительность.

Маэстро 14.11.2012 20:01

a_l,
;)))) Вы меня посмешили. Ну да ладно. Разговор пошел на уровне субъективных ощущений... Поэтому нет смысла его продолжать.
Но вот это мне понравилось больше всего:
"В случае vk это повышает юзабилити" - даа?? и ... в случае vk это конечно же совсем "не влияет на производительность"


Часовой пояс GMT +3, время: 08:44.