onMouseOver и innerHTML не работает ссылка
Существует тег div в нем есть ссылка-картинка, при наведении эта ссылка-картинка заменяется на саму же себя и еще одну ссылку картинку. при этом ссылка почему-то не работает. помогите кто знает почему?
<div id="menu0"></div> <script> k=0 n=1 menu=new Array menu[0]="Glav" menu[1]="Int" Men="<DIV id=i"+k+" onMouseOver=Smena1() onMouseOut=Smena0()> <A href='"+menu[k]+".html' > <IMG src='pic/"+menu[k]+".gif' width=283 height=63 border=0 id="+menu[k]+" /></A></DIV>" document.all.menu0.innerHTML=Men function Smena1() { vst=" <A href='Glav.html' ><IMG src='pic/"+menu[k]+"1.gif' width=283 height=63 border=0 id="+menu[k]+"></A> <BR />"+ "<A href='Int.html' ><IMG src='pic/"+menu[n]+"1.gif' width=283 height=63 border=0 id="+menu[n]+" ></A> <BR />" d=eval("document.all.i"+k) d.innerHTML=vst} </script> |
Пересмотела и упростила код суть та же
<div id="menu0"></div> <script> Men="<DIV id=i0 onMouseOver=Smena1() > <A href='Glav.html' > <IMG src='pic/Glav.gif' id=Glav /></A></DIV>" document.all.menu0.innerHTML=Men function Smena1() { vst="<A href='Glav.html' > <IMG src='pic/Glav.gif' id=Glav /><BR />"+ "<A href='Int.html' > <IMG src='pic/Int.gif' id=Int /> <BR />" d=document.all.i0 d.innerHTML=vst} </script> |
document.all только для IE .
Посмотрите, как другие пишут код на javascript и html, можно на этом же сайте, а то тихий ужас какой-то. |
Так в IE и не работает
Верю что ужас, но все когда-то учились :0) |
Цитата:
|
Это в целом не важно, кто чему, кто-то дома строить, кто-то из дерева вырезать. Суть в том что когда учишься сразу не получается красиво, но это не повод бросать.
Я учусь писать сама, если это был скрытый вопрос. |
Цитата:
Ваша проблема - это не проблема. Почитайте основы работы с DOM, надеюсь, это поможет:) |
В смысле с "другим"??
У меня не получается я прошу подсказать в чем поблема... |
Что-то я и правда понять не могу почему не работает, сонный наверно. Упростил:
<div id="myMenu"></div> <script type="text/javascript"> window.onload = function() { document.getElementById('myMenu').innerHTML = '<div onmouseover="Smena1(this);">link</div>'; }; function Smena1(elem) { //elem.onmouseover = null; elem.innerHTML = '<a href="Glav.html">link</a>'; } </script> Если в Smena1 раскомментировать первую строку или сменить onmouseover на onclick, то начинает работать. |
Да но тогда событие пройдет только один раз, т.е. только при первом наведении, мне надо чтобы при каждом, так как когда указатель уходит с картинки, ставшей двумя она снова сворачивается в одну.
<div id="menu0"></div> <script> Men="<DIV id=i0 onMouseOver=Smena1() onMouseOut=Smena0()> <A href='Glav.html' > <IMG src='pic/Glav.gif' id='Glav' /></A></DIV>" document.all.menu0.innerHTML=Men function Smena1() { vst="<A href='Glav.html' > <IMG src='pic/Glav.gif' id='Glav' /><BR />"+ "<A href='Int.html' > <IMG src='pic/Int.gif' id='Int' /> <BR />" d=document.all.i0 d.innerHTML=vst } function Smena0() { vst1="<A href='Glav.html' > <IMG src='pic/Glav.gif' id='Glav' /><BR />" d=document.all.i0 d.innerHTML=vst1 } </script> </body> |
Часовой пояс GMT +3, время: 03:20. |