Вход

Просмотр полной версии : Элемент select. Выбор элемента в списке


nayldock
06.01.2015, 17:19
Здравствуйте! Есть список со шрифтами. При выборе нужного элемента списка, весь шрифт в документе должен поменяться, НО это происходит лишь при обновлении страницы, и срабатывает значение установленное в списке с индексом 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>