Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Элемент select. Выбор элемента в списке (https://javascript.ru/forum/dom-window/52781-ehlement-select-vybor-ehlementa-v-spiske.html)

nayldock 06.01.2015 17:19

Элемент select. Выбор элемента в списке
 
Здравствуйте! Есть список со шрифтами. При выборе нужного элемента списка, весь шрифт в документе должен поменяться, НО это происходит лишь при обновлении страницы, и срабатывает значение установленное в списке с индексом 0. Как решить эту задачу? Заранее благодарю:
<select name="mySelect" id="font">
<option value ="Cons">Consolas</option>
<option value="Verd">Verdana</option>
<option value="Cour">Courier new</option>
<option value="TNR">Times new roman</option>
<option value="Imp">Impact</option>
</select>
<script>
var objSel = document.getElementById("font");

switch (objSel.selectedIndex)
{
	case 0: document.body.style.fontFamily = "Consolas"; break;
	case 1: document.body.style.fontFamily = "Verdana"; break;
	case 4: document.body.style.fontFamily = "Impact"; break;

}
</script>

рони 06.01.2015 17:38

nayldock,
оформи в виде функции -- функцию привяжи к селекту onchange="моя_функция()"

nayldock 06.01.2015 17:53

Ну дела, спасибо большое! я так и делала, только функцию привязала не к селекту, а к каждому option. Уже и кнопку приделала, с кнопкой работает конечно, но вот не догадалась к самому селекту функцию привязать.:-?

krutoy 06.01.2015 18:40

nayldock,
Немного рефакторинга
<html>
<head>
</head>
<body>
foo <br>
<select name="mySelect" id="font">
<option>Consolas</option>
<option>Verdana</option>
<option>Courier new</option>
<option>Times new roman</option>
<option>Impact</option>
</select>

<script>

document.getElementById("font").onchange=function(){
   document.body.style.fontFamily=this.value
}

</script>
</body>
</html>


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