Вы ошибаетесь в нескольких вещах.
- элемент списка HTML (
<li>
) не имеет значения
- В списке HTML нет «выбранного элемента»
- вы не можете получить «выбранный» предмет, позвонив по номеру
getElementById()
Вот мое альтернативное предложение:
<ul>
<li><a>Main Menu</a>
<ul class="leftbutton" >
<li><a href="List1.html" onclick="return changeList(this);">Sample 1</a></li>
<li><a href="List2.html" onclick="return changeList(this);">Sample 2</a></li>
<li><a href="List3.html" onclick="return changeList(this);">Sample 3</a></li>
<li><a href="List4.html" onclick="return changeList(this);">Sample 4</a></li>
<li><a href="List5.html" onclick="return changeList(this);">Sample 5</a></li>
</ul>
</li>
</ul>
<iframe id="iframeid" width="100%" height="100%" align="middle"></iframe>
<script type="text/javascript">
function changeList(a)
{
var iframe = document.getElementById("iframeid");
iframe.src = a.href;
return false;
}
</script>
Мысли: если JavaScript отключен, он все еще работает (элементарно). Функция возвращает false
, поэтому при включении JavaScript нажатие на ссылку отменяет навигацию по href.
Имейте в виду, что вплоть до HTML 4.01 Transitional также возможно сделать это полностью без JavaScript. Достаточно атрибута target
с именем фрейма:
<ul>
<li><a>Main Menu</a>
<ul class="leftbutton" >
<li><a href="List1.html" target="iframename">Sample 1</a></li>
<li><a href="List2.html" target="iframename">Sample 2</a></li>
<li><a href="List3.html" target="iframename">Sample 3</a></li>
<li><a href="List4.html" target="iframename">Sample 4</a></li>
<li><a href="List5.html" target="iframename">Sample 5</a></li>
</ul>
</li>
</ul>
<iframe id="iframeid" name="iframename" width="100%" height="100%" align="middle"></iframe>