Показать сообщение отдельно
Старый 27.04.2010 в 17:11 Цитата выделенного #58
Даниэль
One Life One Team
Аватар для Даниэль
 
Регистрация: 18.12.2006
Сообщения: 3,968
Сказал(а) спасибо: 781
Поблагодарили: 5,364 раз(а) в 2,292 сообщениях
Деньги: 0$
 
По умолчанию

Не знаю, точно ли мой вопрос относится к теме программирования, но хочу попросить помощи в небольшом редактировании одного JavaScript'a. Надеюсь, тем кто разбирается это не составит труда:

Скачал скрипт для создания меню на сайте. Скрипт встраивается прямо в код страницы, т.е. никаких файлов, кроме html-страницы в архиве не было. Вот собственно и он: http://alpha-racing.ucoz.ru/069.html

Полностью код всей страницы:
Код HTML:
<html> <head> <title>WOscripts.com - JavaScript - Pop-it menu</title> <META http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\"> <META NAME=\"description\" CONTENT=\"Коллекции CGI, PHP, JavaScript скриптов, Java апплеты, огромное количество документации по разным языкам программирования, анимированные гифы, фоны, полезные программы, форум, ссылки по теме.\"> <META NAME=\"keywords\" CONTENT=\"perl scripts, perl, cgi scripts, cgi, перл, java, java scripts, веб-программирование, web-programming, html, каталог ссылок, документация по веб-программированию, cgi скрипты, java скрипты, игры, java апплеты, апплеты, гифы, скрипты, скрипт, книги по веб-программированию, форум по perl, CGI, Perl, script, HTML\"> <Style> A:Link{ Color: white; Text-decoration: underline} A:Hover{ Color: white; Text-decoration: none} td, body {font-family: verdana, arial, helvetica; font-size:11px;} </Style> <!-- HEAD START HERE --> <style> <!-- .menuskin{ position:absolute; width:165px; background-color:menu; border:0px solid black; font:normal 12px Verdana; line-height:14px; z-index:100; visibility:hidden; } .menuskin a{ text-decoration:none; color:black; padding-left:10px; padding-right:10px; } #mouseoverstyle{ background-color:#cc0000; } #mouseoverstyle a{ color:white; } --> </style> <script language=\"JavaScript1.2\"> //Pop-it menu- By WOscripts.com //For full source code and more DHTML scripts, visit http://www.woscripts.com //This credit MUST stay intact for use var linkset=new Array() //SPECIFY MENU SETS AND THEIR LINKS. FOLLOW SYNTAX LAID OUT linkset[0]='<div class=\"menuitems\"><a href=\"http://www.woscripts.com\">WOscripts.com</a></div>' linkset[0]+='<div class=\"menuitems\"><a href=\"http://forum.woscripts.com\"><b><font size=\"1\">FORUM</font></b></a></div>' linkset[0]+='<div class=\"menuitems\"><a href=\"http://www.woteam.net\">WEB-DESIGN</a></div>' linkset[1]='<div class=\"menuitems\"><a href=\"http://msnbc.com\">MSNBC</a></div>' linkset[1]+='<div class=\"menuitems\"><a href=\"http://cnn.com\">CNN</a></div>' linkset[1]+='<div class=\"menuitems\"><a href=\"http://abcnews.com\">ABC News</a></div>' linkset[1]+='<div class=\"menuitems\"><a href=\"http://www.washingtonpost.com\">Washington Post</a></div>' ////No need to edit beyond here var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1 var ns6=document.getElementById&&!document.all var ns4=document.layers function showmenu(e,which){ if (!document.all&&!document.getElementById&&!document.layers) return clearhidemenu() menuobj=ie4? document.all.popmenu : ns6? document.getElementById("popmenu") : ns4? document.popmenu : "" menuobj.thestyle=(ie4||ns6)? menuobj.style : menuobj if (ie4||ns6) menuobj.innerHTML=which else{ menuobj.document.write('<layer name=gui bgColor=#E6E6E6 width=165 onmouseover=\"clearhidemenu()\" onmouseout=\"hidemenu()\">'+which+'</layer>') menuobj.document.close() } menuobj.contentwidth=(ie4||ns6)? menuobj.offsetWidth : menuobj.document.gui.document.width menuobj.contentheight=(ie4||ns6)? menuobj.offsetHeight : menuobj.document.gui.document.height eventX=ie4? event.clientX : ns6? e.clientX : e.x eventY=ie4? event.clientY : ns6? e.clientY : e.y //Find out how close the mouse is to the corner of the window var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY //if the horizontal distance isn't enough to accomodate the width of the context menu if (rightedge<menuobj.contentheight) menuobj.thestyle.top=ie4? document.body.scrollTop+eventY-menuobj.contentheight : ns6? window.pageYOffset+eventY-menuobj.contentheight : eventY-menuobj.contentheight else menuobj.thestyle.top=ie4? document.body.scrollTop+event.clientY : ns6? window.pageYOffset+eventY : eventY menuobj.thestyle.visibility=\"visible\" return false } function contains_ns6(a, b) { //Determines if 1 element in contained in another- by Brainjar.com while (b.parentNode) if ((b = b.parentNode) == a) return true; return false; } function hidemenu(){ if (window.menuobj) menuobj.thestyle.visibility=(ie4||ns6)? \"hidden\" : \"hide\" } function dynamichide(e){ if (ie4&&!menuobj.contains(e.toElement)) hidemenu() else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget)) hidemenu() } function delayhidemenu(){ if (ie4||ns6||ns4) delayhide=setTimeout(\"hidemenu()\",500) } function clearhidemenu(){ if (window.delayhide) clearTimeout(delayhide) } function highlightmenu(e,state){ if (document.all) source_el=event.srcElement else if (document.getElementById) source_el=e.target if (source_el.className==\"menuitems\"){ source_el.id=(state==\"on\")? \"mouseoverstyle\" : \"\" } else{ while(source_el.id!=\"popmenu\"){ source_el=document.getElementById? source_el.parentNode : source_el.parentElement if (source_el.className==\"menuitems\"){ source_el.id=(state==\"on\")? \"mouseoverstyle\" : \"\" } } } } if (ie4||ns6) document.onclick=hidemenu </script> <!-- HEAD END HERE --> </head> <body bgcolor=\"#737994\" text=\"#FFFFFF\" link=\"#FFFFFF\" vlink=\"#FFFFFF\" > <!-- BODY START HERE --> <div id=\"popmenu\" class=\"menuskin\" onMouseover=\"clearhidemenu();highlightmenu(event,'on')\" onMouseout=\"highlightmenu(event,'off');dynamichide(event)\"> </div> <a href=\"#\" onMouseover=\"showmenu(event,linkset[0])\" onMouseout=\"delayhidemenu()\">Webmaster Links</a> <a href=\"#\" onMouseover=\"showmenu(event,linkset[1])\" onMouseout=\"delayhidemenu()\">News sites</a> <!-- BODY END HERE --> </body> </html>

А проблема в том, чтобы выпадающее меню появлялось не ниже и правее мыши, а выше и правее, т.е. в месте касания мышью ссылки был не верхний левый угол этого выпадающего меню, а нижний левый. Это наверное требует изменения всего пары каких-то значений, но для меня это слишком сложно. Заранее спасибо за помощь!
__________________
07/07/2011 - 07/07/2012
Offline   Ответить с цитированием