document.getElementById(...) - проблемы в ie
:help:
всем доброго времени суток! к сожалению я очень плохо разбираюсь в яваскрипт, поэтому нужна ваша помощь. вот данный файл: http://ruslan.internet.az/jsmenu/index.html здесь при щелчке на какой-нибудь раздел меню его название сразу отображается в главном контенте. во всех браузерах, кроме IE!!!!!!!!! IE при клике на разделы меню постоянно выдает ошибку, что document.getElementById(...) не действителен либо не явл-ся объектом. var toggle1 = function () { var currentDiv = null; function open(divElement, linkId) { divElement.style.display = "block"; currentDiv = divElement; var titleElement = document.getElementById("title"); titleElement.textContent = document.getElementById(linkId).textContent; } function close(divElement) { divElement.style.display = "none"; currentDiv = null; } return function (divID, linkId, source) { // alert('link value ' + document.getElementById(linkId).textContent); var divElement = document.getElementById(divID); if (divElement) { if (currentDiv != null) close(currentDiv); open(divElement, linkId); document.getElementById("selected").setAttribute("source", source); reloadGrid(); } } }(); объясните пожалуйста что на этом участке не так document.getElementById("selected").setAttribute(" source", source); :help: <div id="middle"> <div id="menu"> <div class="vertMenu" onMouseOver="this.className='vertMenuOver'" onMouseOut="this.className='vertMenu'"> <a id="html" href="javascript://" onClick="toggle1('div1', 'html', 1)">HTML</a> <div class="myDiv" id="div1">HTML</div> </div> <div class="vertMenu" onMouseOver="this.className='vertMenuOver'" onMouseOut="this.className='vertMenu'"> <a id="css" href="javascript://" onClick="toggle1('div2', 'css', 2);">CSS</a> <div class="myDiv" id="div2">CSS</div> </div> <div class="vertMenu" onMouseOver="this.className='vertMenuOver'" onMouseOut="this.className='vertMenu'"> <a id="php" href="javascript://" onClick="toggle1('div3', 'php', 3);">PHP</a> <div class="myDiv" id="div3">PHP</div> </div> <div class="vertMenu" onMouseOver="this.className='vertMenuOver'" onMouseOut="this.className='vertMenu'"> <a id="js" href="javascript://" onClick="toggle1('div4', 'js', 4);">JS</a> <div class="myDiv" id="div4">JS</div> </div> </div> <div id="content"> <p id="title">Hello World!</p> </div> </div> |
изначально было "selectedOperation"
результат тот же |
Цитата:
не вижу элемента с id="selected" правильно браузеры ругаются |
так во всех браузерах корректно! только ИЕ глючит!
дело в том что код не мой - дали задание исправить. но я уже весь нэт облазила, понятия не имею как его переделать. что делать с этим "selected"? |
Цитата:
|
кстати, при включении данной команды:
alert('link value ' + document.getElementById(linkId).textContent); ИЕ его тоже не распознает return function (divID, linkId, source) { // alert('link value ' + document.getElementById(linkId).textContent); var divElement = document.getElementById(divID); if (divElement) { if (currentDiv != null) close(currentDiv); open(divElement, linkId); document.getElementById("selected").setAttribute("source", source); reloadGrid(); } http://ruslan.internet.az/jsmenu/index1.html |
textContent понимает только ie9-10
|
http://ruslan.internet.az/jsmenu/index4.html
наверно уже не по теме, но вот нашла один вариант, переделала немного под себя. в браузерах вроде ошибок не показывает. здесь при клике на ссылку появляется новый блок (НУЖНО) но если кликнуть второй раз - исчезает (НЕ НУЖНО) если кликать на ссылки подряд (сверху вниз) - блоки поочередно меняются, каждый соответствующий своей ссылке (НУЖНО) но если нажать н-р сначала на 3-ю ссылку, а потом на 1-ю, то там уже глюк (НЕ НУЖНО) помогите пожалуйста p.s.: также хотела узнать как правильно записать код чтоб при клике на ссылку она выделялась до тех пор пока не кликну на другую заранее спс. |
|
Часовой пояс GMT +3, время: 16:16. |