вообщем дело такое, сайт старый, писался в 2005 году кажись. вообщем тогда разработчики сделали рабочее меню для ИЕ и успокоились(хотя может и нет), сейчас оно не пашет в опере, хроме, новом ИЕ. в ФФ вроде пашет почему то. вопрос, может можно малой кровью изменить скрипт и заставить его работать нормально я в этих делах вообщем нуб scripts.js | Код |
function unFocus() { document.search.str.blur(); } function jm(mainDiv,apearDiv) { menuPosition(mainDiv,apearDiv); showLayer(apearDiv); } function menuPosition(mainDiv,apearDiv) { var is=new Is(); if (is.ie) { var mainMenu=document.all[mainDiv]; mainLeft = 0; mainTop = -12; while (mainMenu && mainMenu.offsetParent) { mainLeft+=mainMenu.offsetLeft; mainTop+=mainMenu.offsetTop; mainMenu=mainMenu.offsetParent; } document.all[apearDiv+"Div"].style.pixelLeft=mainLeft; document.all[apearDiv+"Div"].style.pixelTop=mainTop+34; if(navigator.appName=='Opera') { document.all[apearDiv+"Div"].style.pixelTop=mainTop; } } else { if(is.ns) { var mainMenu=document.getElementById(mainDiv); mainLeft = 0; mainTop = 0; while (mainMenu && mainMenu.offsetParent) { mainLeft+=mainMenu.offsetLeft; mainTop+=mainMenu.offsetTop; mainMenu=mainMenu.offsetParent; } document.getElementById(apearDiv+"Div").style.left=mainLeft; document.getElementById(apearDiv+"Div").style.top=mainTop+14; } if(navigator.appName=='Opera') { document.all[apearDiv+"Div"].style.pixelTop=mainTop; } } } //********************************************** function Is() { var appName = navigator.appName; var version = navigator.appVersion; this.ns = ( appName == "Netscape" ); this.ns4 = this.ns && version.indexOf("4.")!=-1; this.ns5 = this.ns && version.indexOf("5.")!=-1; this.ns6 = ( this.ns5 || (this.ns && version.indexOf("6.")!=-1) );
this.ie = ( appName == "Microsoft Internet Explorer" ); this.ie4 = this.ie && version.indexOf("MSIE 4.")!=-1; this.ie5 = this.ie && version.indexOf("MSIE 5.")!=-1; this.ie6 = this.ie && version.indexOf("MSIE 6.")!=-1; var userAgent = navigator.userAgent.toLowerCase(); this.mac = ( userAgent.indexOf( "mac" ) != -1 ); this.win = ( userAgent.indexOf( "windows" ) != -1 ); this.linux = ( userAgent.indexOf( "linux" ) != -1 ); } Is.prototype.toString = function() { var s = ''; for( var i in this ) { s += i + ': ' + this[i] + '\n'; } return s; } var is = new Is(); function objectMenu( div ) { this.id = div.id; this.name = div.id.replace(/Div/, "");
this.div = div; this.style = ( is.ns4 ) ? this.div : this.div.style;
//this.position = this.getPosition(); //this.size = this.getSize(); } objectMenu.all = new Array(); objectMenu.add = function( div ) { var name = div.id.slice(0, -3); if( div.id == name + "Div") { objectMenu.all[ name ] = new objectMenu( div ); eval( name + " = objectMenu.all." + name ); } } objectMenu.init = function( doc ) { this.isLoaded = true; if( document.layers ) { if( doc == null ) doc = document; for( var i=0; i<doc.layers.length; i++ ) { objectMenu.add( doc.layers[i] ); objectMenu.init( doc.layers[i].document ); } return true; } var allD = false; if( is.ie4 ) allD = document.all.tags("DIV"); else if( is.ie5 || is.ie6 ) allD = document.getElementsByTagName("DIV"); else if( is.ns6 ) allD = document.getElementsByTagName("DIV"); if( allD ) { for( var i=0; i<allD.length; i++ ) objectMenu.add( allD[i] ); return true; } return false; } objectMenu.prototype.show = function() { this.style.visibility = "visible"; } objectMenu.prototype.hide = function() { this.style.visibility = "hidden"; } function show(obj) { if(objectMenu.all[obj]) { objectMenu.all[obj].show(); } } function hide(obj) { if(objectMenu.all[obj]) objectMenu.all[obj].hide(); }
// Установка переменных window.onerror = null; var bName = navigator.appName; var bVer = parseInt(navigator.appVersion); var NS4 = (bName == "Netscape" && bVer == 4); var NS4 = (bName == "Netscape" && bVer >= 4); var IE4 = (bName == "Microsoft Internet Explorer" && bVer >= 4); var IE4 = ((bName == "Microsoft Internet Explorer" && bVer >= 4) || (bName == "Netscape" && bVer == 5)); var NS3 = (bName == "Netscape" && bVer < 4); var IE3 = (bName == "Microsoft Internet Explorer" && bVer < 4); var menuActive = 0; var menuOn = 0; var onLayer; var timeOn = null; var loaded = 0; var onLayerSize = 0;
// УстанавливАем цвет меню var menuColor = "#FFFFFF"; var menuBorderColor = "#000000";
if (NS4 || IE4) { if (navigator.appName == "Netscape") { layerStyleRef="layer."; layerRef="document.layers"; styleSwitch=""; }else{ layerStyleRef="layer.style."; layerRef="document.all"; styleSwitch=".style"; } }
// Показываем слои function showLayer(layerName) { if (NS4 || IE4) { if (timeOn != null) { clearTimeout(timeOn); hideLayer(onLayer); } onLayer = layerName; if (NS4 || IE4) { if(navigator.appName != "Netscape") { eval(layerRef+'["'+layerName+'Div"]'+styleSwitch+'.display=""'); } show(layerName); } } }
// Прячем слои function hideLayer(layerName) { if (menuActive == 0) { if (NS4 || IE4) { hide(layerName); } } }
// Счетчик для пряталки слоев function btnTimer(opt) { timeOn = setTimeout("btnOut()",250); }
// Если время вышло function btnOut(layerName) { if (menuActive == 0) { hideLayer(onLayer); } }
// Мышка на слое function menuOver(itemName) { clearTimeout(timeOn); menuActive = 1; }
// мышка вне слоя function menuOut(itemName) { menuActive = 0; timeOn = setTimeout("hideLayer(onLayer)", 400); }
// Создаем меню function menuLink(title, url) { this.title = title; this.url = url; }
// Создание меню function menuMaker(menuArray, LayerSize) { onLayerSize = LayerSize; n = ""; j = eval(menuArray + ".length") - 1; nameOfLayer = eval(menuArray + ".id.slice(0, -3)"); topTable = "<div ID='" + eval(menuArray + ".id") + "'><table border=1 style='border-collapse: collapse; border-width: 1px; border-top-width: 0px; border-color:#D0D0D8;' Cellpadding=0 cellspacing=0 bgcolor='" + menuColor +"' bordercolor='" + menuBorderColor +"'>"; cell = "<tr><td onmouseover=\"showLayer('" + nameOfLayer + "'); this.className='menuover'; \" onmouseout=\"btnTimer(); this.className='menuout'; \" class='menuout' style='border-color: #C4C4C4; border-top-width: 0px; padding: 3px; padding-left: 6px; padding-right: 6px;'>"; cellend = "</td></tr>"; btmTable = "</table></div>"; n += topTable; for( var i = 1; i <=j; i++) { n += cell+"<a class=menu href='" + eval(menuArray + "[" + i + "].url") + "' target='_top' >" + eval(menuArray + "[" + i + "].title") + "</a><br>"+cellend; } n += btmTable; return n; }
function CallThisMenu() { for(i=0; i<menuSize.length;i++) { document.write(menuMaker(menuSize[i],21)); nameMenu=eval(menuSize[i]+".id"); if(navigator.appName != "Netscape") { eval(layerRef+'["'+nameMenu+'"]'+styleSwitch+'.display="none"'); } } } onload=objectMenu.init;
|
rollover.js | Код | menu1_on=new Image(); menu1_on.src='/_img/menu1l.gif'; menu1_off=new Image(); menu1_off.src='/_img/menu1.gif';
menu2_on=new Image(); menu2_on.src='/_img/menu2l.gif'; menu2_off=new Image(); menu2_off.src='/_img/menu2.gif';
menu3_on=new Image(); menu3_on.src='/_img/menu3l.gif'; menu3_off=new Image(); menu3_off.src='/_img/menu3.gif';
menu4_on=new Image(); menu4_on.src='/_img/menu4l.gif'; menu4_off=new Image(); menu4_off.src='/_img/menu4.gif';
menu5_on=new Image(); menu5_on.src='/_img/menu5l.gif'; menu5_off=new Image(); menu5_off.src='/_img/menu5.gif';
menu6_on=new Image(); menu6_on.src='/_img/menu6l.gif'; menu6_off=new Image(); menu6_off.src='/_img/menu6.gif';
function chg(img) { document[img].src=eval(img+"_on.src"); } function rst(img) { document[img].src=eval(img+'_off.src'); }
|
array.js | Код |
menuSize = new Array(); menuSize[0] = "Menu1"; menuSize[1] = "Menu2"; menuSize[2] = "Menu3";
Menu1 = new Array(3); Menu1.id = "Menu1Div"; Menu1[1] = new menuLink("Новости", "/news.html"); Menu1[2] = new menuLink("О компании", "/about.html"); Menu1[3] = new menuLink("Наши партнеры","/partners.html");
Menu2 = new Array(2); Menu2.id = "Menu2Div"; Menu2[1] = new menuLink("Каталог контрольно-измерительных приборов", "http://www.kip.spektr.org/index.html"); Menu2[2] = new menuLink("Каталог горно-шахтного оборудования", "/rock_catalog.html"); Menu2[3] = new menuLink("Каталог трубопроводной арматуры", "/truboprovod.html");
Menu3 = new Array(11); Menu3.id = "Menu3Div"; Menu3[1] = new menuLink("Прайс-лист на поставляемые приборы", "/price.html"); Menu3[2] = new menuLink("Работа в системе ГОСЗАКАЗОВ", "/goszakaz.html"); Menu3[3] = new menuLink("Приборы контроля состояния турбоагрегатов", "/aktiv.html"); Menu3[4] = new menuLink("Газоанализаторы, кондуктометры", "/kondukt.html"); Menu3[5] = new menuLink("Провода термокомпенсационные","/provod.html"); Menu3[6] = new menuLink("Электроисполнительные механизмы и приводы", "/mie.html"); Menu3[7] = new menuLink("Часы Электроника 7-06...", "/chasi_elektronika.html"); Menu3[8] = new menuLink("Измерительные преобразователи", "/vzep.html"); Menu3[9] = new menuLink("Пневмоаппаратура", "/pnevmo.html"); Menu3[10] = new menuLink("Горношахтное оборудование", "/rock_catalog.html"); Menu3[11] = new menuLink("Механизмы, приводы, реле", "/khark.html");
|
spektr.org Это сообщение отредактировал(а) Cobalt - 3.2.2011, 09:00
--------------------
Стоишь на берегу И чувствуешь соленый запах ветра, Что веет с моря,И знаешь что свободен ты, и жизнь лишь началась....И губы жжет.. подруги поцелуй, Пропитанный слезой!
|