home Foro de soporte Ayuda para webmasters Java y Javascript
Necesito un menu desplegable horizontal
Haz clic para ver el perfil del usuario
Usuario Novato
Usuario Novato
#1 ·

La cuestión es que mi sistema a falta de sabiduria, es inducir al codigo a que funciona en mi página, pues vale hay un menu desplegable muy guapo en http://www.intermonoxfam.org/page.asp?id=1&idioma=1 pero no hay manera de cogerlo, esta bloqueado o algo parecido, o mas facil, no lo se hacer, alguna alma bondadosa sabe de alguno parecido a éste de dominio público

Haz clic para ver el perfil del usuario
· ·
#2 · ·

Espero te sirva


<title> NewsMenu </title>
<style type="text/css">
.clTopMenu {position:absolute; width:101px; height:150px; clip:rect(0px 101px 14px 0px); layer-background-color:#eeeeee; background-color:#eeeeee; z-index:31; visibility:hidden;}
.clTopMenuBottom {position:absolute; width:101px; height:3px; clip:rect(0px 101px 3px 0px); top:11; layer-background-color:#cecfce; background-color:#cecfce; z-index:2;}
.clTopMenuText {position:absolute; width:91px; left:5px; top:15px; font-family:arial,helvetica,sans-serif; font-size:11px; background-color:#eeeeee; z-index:1;}

<script language="JavaScript" type="text/javascript">
* Copyright (C) 2001 Thomas Brattli
* This script was released at DHTMLCentral.com
function lib_bwcheck(){ //Browsercheck (needed)
this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
return this
var bw=lib_bwcheck()
If you want to change the appearance of the text, background-colors, size or
anything do that in the style tag above.

This menu might not be as easy to adapt to your own site, but please
play around with it before you mail me for help...

Variables to set.

//There are 2 ways these menus can be placed
// 0 = column
// 1 = row

//How many menus do you have? (remember to copy and add divs in the body if you add menus)
var nNumberOfMenus=2

var nMwidth=101 //The width on the menus (set the width in the stylesheet as well)
var nPxbetween=20 //Pixels between the menus
var nFromleft=10 //The first menus left position
var nFromtop=85 //The top position of the menus
var nBgcolor='#CECFCE' //The bgColor of the bottom mouseover div
var nBgcolorchangeto='#6380BC' //The bgColor to change to
var nImageheight=11 //The position the mouseover line div will stop at when going up!

You shouldn't have to change anything below this
//Object constructor
function makeNewsMenu(obj,nest){
nest=(!nest) ? "":'document.'+nest+'.'
this.css=bw.dom? document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+"document.layers." +obj):0;
this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+"document.layers." +obj):0;
this.slideUp=b_slideUp; this.slideDown=b_slideDown;
this.obj = obj + "Object"; eval(this.obj + "=this")
//Objects methods

// A unit of measure that will be added when setting the position of a layer.
var px = bw.ns4||window.opera?"":"px";

function b_moveIt(x,y){this.x=x; this.y=y; this.css.left=this.x+px; this.css.top=this.y+px;}
function b_bgChange(color){this.css.backgroundColor=color; this.css.bgColor=color; this.css.background=color;}
function b_clipTo(t,r,b,l){
if(bw.ns4){this.css.clip.top=t; this.css.clip.right=r; this.css.clip.bottom=b; this.css.clip.left=l
}else this.css.clip="rect("+t+"px "+r+"px "+b+"px "+l+"px)";
function b_slideUp(ystop,moveby,speed,fn,wh){
this.moveIt(this.x,this.y-5); eval(wh)
this.slideactive=false; this.moveIt(0,ystop); eval(fn)
function b_slideDown(ystop,moveby,speed,fn,wh){
this.moveIt(this.x,this.y+5); eval(wh)
this.slideactive=false; this.moveIt(0,ystop); eval(fn)
//Initiating the page, making cross-browser objects
function newsMenuInit(){
oTopMenu=new Array()
oTopMenu=new Array()
oTopMenu[0]=new makeNewsMenu('divTopMenu'+i)
oTopMenu[1]=new makeNewsMenu('divTopMenuBottom'+i,'divTopMenu'+i)
oTopMenu[2]=new makeNewsMenu('divTopMenuText'+i,'divTopMenu'+i)
if(!nPlace) oTopMenu[0].moveIt(i*nMwidth+nFromleft+(i*nPxbetween),nFromtop)
//Moves the menu
function topMenu(num){
if(oTopMenu[num][1].y==nImageheight) oTopMenu[num][1].slideDown(oTopMenu[num][2].scrollHeight+20,10,40,'oTopMenu['+num+'][0].clipTo(0,nMwidth,oTopMenu['+num+'][1].y+3,0)','oTopMenu['+num+'][0].clipTo(0,nMwidth,oTopMenu['+num+'][1].y+3,0)')
else if(oTopMenu[num][1].y==oTopMenu[num][2].scrollHeight+20) oTopMenu[num][1].slideUp(nImageheight,10,40,'oTopMenu['+num+'][0].clipTo(0,nMwidth,oTopMenu['+num+'][1].y+3,0)','oTopMenu['+num+'][0].clipTo(0,nMwidth,oTopMenu['+num+'][1].y+3,0)')
//Changes background onmouseover
function menuOver(num){oTopMenu[num][1].bgChange(nBgcolorchangeto)}
function menuOut(num){oTopMenu[num][1].bgChange(nBgcolor)}

//Calls the init function onload if the browser is ok...
if (bw.bw) onload = newsMenuInit;

Multiple Scripts
If you have two or more scripts that use the onload event, probably only one will run (the last one).
Here is a solution for starting multiple scripts onload:
1. Delete or comment out all the onload assignments, onload=initScroll and things like that.
2. Put the onload assignments in the body tag like in this example, note that they must have braces ().
Example: <body onload="initScroll(); initTooltips(); initMenu();">


<body bgcolor="#FFFFFF">
<!-- Remember the "news" "key control" and "page contols" text are images, you probably want to change those
with your own images. If your own images have different sizes please adjust the height and clips
of the divs, and change the nImageheight variable in the script. Good luck -->
<div id="divTopMenu0" class="clTopMenu"><a href="#" onmouseover="menuOver(0)" onmouseout="menuOut(0)" onclick="topMenu(0); return false;" onfocus="if(this.blur)this.blur();"><img src="news.gif" width=101 height=11 alt="" border=0 align="top"></a>
<div id="divTopMenuText0" class="clTopMenuText">
Added some link to me buttons and
advertising info and a new script and a new tutorial.<br><br>
Remember to join the newsletter!
<div id="divTopMenuBottom0" class="clTopMenuBottom"></div>

<div id="divTopMenu1" class="clTopMenu"><a href="#" onmouseover="menuOver(1)" onmouseout="menuOut(1)" onclick="topMenu(1); return false;" onfocus="if(this.blur)this.blur();"><img src="keycontrol.gif" width=101 height=11 alt="" border=0 align="top"></a>
<div id="divTopMenuText1" class="clTopMenuText">
1-6=Menu controls<br>
K=Key controls<br>
P=Page control<br>
A=Scroll down<br>
Z=Scroll up<br>
<div id="divTopMenuBottom1" class="clTopMenuBottom"></div>
<div id="divTopMenu2" class="clTopMenu"><a href="#" onmouseover="menuOver(2)" onmouseout="menuOut(2)" onclick="topMenu(2); return false;" onfocus="if(this.blur)this.blur();"><img src="pagecontrol.gif" width=101 height=11 alt="" border=0 align="top"></a>
<div id="divTopMenuText2" class="clTopMenuText">
Text here.
<div id="divTopMenuBottom2" class="clTopMenuBottom"></div>
<!-- To add a new menu just copy these lines:
<div id="divTopMenuN" class="clTopMenu"><a href="#" onmouseover="menuOver(N)" onmouseout="menuOut(N)" onclick="topMenu(N); return false;" onfocus="if(this.blur)this.blur();">HEADING IMAGE GOES HERE</a>
<div id="divTopMenuTextN" class="clTopMenuText">
<div id="divTopMenuBottomN" class="clTopMenuBottom"></div>
And change the letter N to a number higher then the last menu...
(and remember to set the variable nNumberOfMenus in the script to
the same number of menus you have (remember it starts counting
at 0) --><br><br>


De interés Público
Asuntos claros en los temas
Consultas en temas no afines serán borradas
Tratemos de expresarnos bien, que así da gusto leer

Haz clic para ver el perfil del usuario
Usuario Novato
Usuario Novato
#3 ·

Muchas gracias voy a probarlo

Haz clic para ver el perfil del usuario
Usuario Novato
Usuario Novato
#4 ·

Hola, sabes, también estoy en busca de un menú ya sea en java, dhtml, lo que sea, pero horizontal y desplegable, pero el único que he podido crear con CoffeeCup HTML Editor por si solo pesa 26kb, sin agregarle nada más, y como comprenderás ese tamaño es algo improcedente para una web.

Sin embargo hay una web que tiene un menú en java muy ligero, fíjate en: http://www.wwe.com y ese menú sí que da envidia.

Por favor si puedes ayudarme a conseguir el código o software que me facilite el crear un menú horizontal desplgable y ligero LO AGRADACERÉ MUCHISIMO.

Haz clic para ver el perfil del usuario
Usuario baneado
Usuario baneado
· ·
#5 ·
Este mensaje no se muestra porque su autor está baneado
ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Foro de soporte · Ayuda para webmasters · Java y Javascript
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  
TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Ahora son las 07:07 UTC+02:00 DST
Temas similares
 I TemaAutorMensajesVisitasÚltima respuesta
No Hay mensajes nuevos14/Jun/2007, 18:33
511k26/Nov/2009, 15:33
 Ir al último mensaje del tema
No Hay mensajes nuevos15/Dic/2004, 18:38
23k05/Ene/2005, 07:40
 Ir al último mensaje del tema
No Hay mensajes nuevos25/Abr/2004, 19:45
212k28/Abr/2004, 20:12
 Ir al último mensaje del tema
No Hay mensajes nuevos22/Abr/2010, 18:26
42k23/Abr/2010, 20:35
 Ir al último mensaje del tema
No Hay mensajes nuevos03/Jun/2008, 05:27
02k03/Jun/2008, 05:27
 Ir al último mensaje del tema