Такая проблема:
Выпадающая Менюха написанная на JavaScript корректно работает в IE и в Opera, а в остальных браузерах не хочет...
Нужно поправить скрипт. Помогите, если можите.
Исходная страничка ниже.
Вид для печати
Такая проблема:
Выпадающая Менюха написанная на JavaScript корректно работает в IE и в Opera, а в остальных браузерах не хочет...
Нужно поправить скрипт. Помогите, если можите.
Исходная страничка ниже.
Он только в ИЕ и работает, в Опере (7.54) -- не пашет.
Так что ж делать-то???
1. Сделай на XML , коли такое уж простое меню... без разного рода наворотов прозрачности и движения... =)))
2. Советую зайти на обсуждение дизайна, ой сколько критики будет +)) зато под конец завестаеш приличный сайт!
У меня вот тоже есть меню.. не грамоздкое и не тормозное .. работает в IE и Opera ..
а в фаирфоксе не хочет [Only registered and activated users can see links. Click Here To Register...]
Мож мне тоже кто нить поможет поправить скрипт ? [Only registered and activated users can see links. Click Here To Register...]
Посмотреть меню в действии можно тут: [Only registered and activated users can see links. Click Here To Register...] Там же можно и выдрать JavaScript из странички ..
[/quote]А конкретный примерчик на XML можешь подкинуть? [Only registered and activated users can see links. Click Here To Register...]Цитата:
Originally posted by Asguart@Apr 20 2005, 16:17
1. Сделай на XML , коли такое уж простое меню... без разного рода наворотов прозрачности и движения... =)))
<div align='right'>[Only registered and activated users can see links. Click Here To Register...]
Короче говоря: именно так должна выглядеть строчка в теле документа, тогда и в лисе и в осле и в опере все будет отображаться корректно
<script language="javascript" type="text/javascript" src="vashscript.js" charset="windows-1251""></script>
[/quote]не помогло [Only registered and activated users can see links. Click Here To Register...]Цитата:
Originally posted by deniska@Sep 11 2005, 04:31
Короче говоря: именно так должна выглядеть строчка в теле документа, тогда и в лисе и в осле и в опере все будет отображаться корректно
<script language="javascript" type="text/javascript" src="vashscript.js"* charset="windows-1251""></script>
<div align='right'>[Only registered and activated users can see links. Click Here To Register...]
Как мне кажется, тут дело в самом коде js
Если разбираетесь в нем, помогите:
Код:var ie4, nn4, nn6;
var rX, lX, tY, bY;
var zi=100;
ie4 = nn4 = nn6 = 0;
if(document.all)
* * * *{ie4=1; document.body.onmousemove=updateIt;}
if(document.layers)
* * * *{nn4=1; window.captureEvents(Event.MOUSEMOVE); window.onmousemove=updateIt;}
if(document.getElementById&&!ie4)
* * * *{nn6=1; document.body.onmousemove=updateIt;}
function dropit(e,oIEorNN6s,sOneNN,xMenu){
* * * *if(ie4){
* * * * * * * *oneIE = oIEorNN6s;
* * * * * * * *if (window.themenu&&themenu.id!=oneIE.id)
* * * * * * * * * * * *themenu.style.visibility="hidden";
* * * * * * * *themenu=oneIE;
* * * * * * * *themenu.style.left=document.body.scrollLeft+event.clientX-event.offsetX;
* * * * * * * *themenu.style.top=document.body.scrollTop+event.clientY-event.offsetY+15;
* * * * * * * *lX=themenu.style.posLeft-document.body.scrollLeft;
* * * * * * * *rX=lX+themenu.offsetWidth;
* * * * * * * *tY=themenu.style.posTop-document.body.scrollTop-25;
* * * * * * * *bY=themenu.offsetHeight+tY+25;
* * * * * * * *//updateIt(oneIE);
* * * * * * * *if (themenu.style.visibility=="hidden"){
* * * * * * * * * * * *themenu.style.visibility="visible";
* * * * * * * * * * * *themenu.style.zIndex=zi++;
* * * * * * * *}
* * * *}
* * * *if(nn4){
* * * * * * * *if (window.themenu&&themenu.id!=eval(sOneNN).id)
* * * * * * * * * * * *themenu.visibility="hide";
* * * * * * * *themenu=eval(sOneNN);
* * * * * * * *if (themenu.visibility=="hide")
* * * * * * * * * * * *themenu.visibility="show";
* * * * * * * *themenu.zIndex++;
* * * * * * * *themenu.left=e.pageX-e.layerX;
* * * * * * * *themenu.top=e.pageY-e.layerY+14;
* * * * * * * *lX=themenu.left;
* * * * * * * *rX=lX+themenu.clip.width;
* * * * * * * *tY=themenu.top-25;
* * * * * * * *bY=themenu.top+themenu.clip.height;
* * * * * * * *return false;
* * * *}
* * * *if(0){
* * * * * * * *oneNN = document.getElementById(oIEorNN6s); //eval(sOneNN);
* * * * * * * *if (window.themenu&&themenu.id!=oneNN.id)
* * * * * * * * * * * *themenu.style.visibility="hidden";
* * * * * * * *themenu=oneNN;
* * * * * * * *themenu.style.left=xMenu;
* * * * * * * *themenu.style.top=70;
* * * * * * * *lX=parseInt(themenu.style.left);
* * * * * * * *rX=lX+themenu.offsetWidth;
* * * * * * * *tY=parseInt(themenu.style.top);
* * * * * * * *bY=themenu.offsetHeight+tY+25;
* * * * * * * *//updateIt(oneNN);
* * * * * * * *if (themenu.style.visibility=="hidden"){
* * * * * * * * * * * *themenu.style.visibility="visible";
* * * * * * * * * * * *themenu.style.zIndex=zi++;
* * * * * * * *}
* * * *}
}
function hidemenu (whichone){
* * * *if(ie4) hidemenu1 (whichone);
* * * *if(nn6) hidemenu3();
* * * *if(nn4) hidemenu2();
}
function hidemenu1(whichone){
* * * *if(window.themenu)
* * * * * * * *themenu.style.visibility="hidden";
* * * *hidemenu2();
}
function hidemenu2(){
* * * *if(typeof(themenu)!="undefined")
* * * * * * * *themenu.visibility="hide";
}
function hidemenu3(){
* * * *if (themenu.style.visibility=="visible")
* * * * * * * *themenu.style.visibility="hidden";
}
function updateIt(oneIE){
* * * *var x,y
* * * *if(ie4){
* * * * * * * *x=window.event.clientX;
* * * * * * * *y=window.event.clientY;
* * * * * * * *if(x>rX || x<lX) hidemenu(oneIE);
* * * * * * * *else if(y>bY+1 || y<tY) hidemenu1(oneIE);
* * * *}
* * * *if(nn6){
* * * * * * * *x=oneIE.clientX;
* * * * * * * *y=oneIE.clientY;
* * * * * * * *if(x>rX || x<lX) hidemenu3();
* * * * * * * *else if(y>bY+1 || y<tY-30) hidemenu3();
* * * *}
* * * *if(nn4){
* * * * * * * *x=oneIE.pageX;
* * * * * * * *y=oneIE.pageY;
* * * * * * * *if(x>rX || x<=lX-1) hidemenu2();
* * * * * * * *else if(y>bY || y<tY) hidemenu2();
* * * *}
}
Попробую посмотреть вечером