Estoy haciendo un menu con clic derecho:
Código HTML:
<style> .skin{ cursor:default; font:menutext; position:absolute; text-align:left; font-family: Arial, Helvetica, sans-serif; font-size: 10pt; width:120px; background-color:#FFFFFF; border:2px outset #000000; visibility:hidden; border:2 outset buttonhighlight; } </style> <script> function $(e){ document.getElementById(e) } function seleccionar(obj){ if(obj.nodeName.toLowerCase()=='textarea' || (obj.nodeName.toLowerCase()=='input' && obj.type=='text')){ obj.select(); return; } if (window.getSelection) { var sel = window.getSelection(); var range = document.createRange(); range.selectNodeContents(obj); sel.removeAllRanges(); sel.addRange(range); } else if (document.selection) { document.selection.empty(); var range = document.body.createTextRange(); range.moveToElementText(obj); range.select(); } } function ver_menu_tcs(e){ var rightedge=ie5? document.body.clientWidth-event.clientX : window.innerWidth-e.clientX; var bottomedge=ie5? document.body.clientHeight-event.clientY : window.innerHeight-e.clientY; if (rightedge<menuobj.offsetWidth) menuobj.style.left=ie5? document.body.scrollLeft+event.clientX-menuobj.offsetWidth : window.pageXOffset+e.clientX-menuobj.offsetWidth; else menuobj.style.left=ie5? document.body.scrollLeft+event.clientX : window.pageXOffset+e.clientX; if (bottomedge<menuobj.offsetHeight) menuobj.style.top=ie5? document.body.scrollTop+event.clientY-menuobj.offsetHeight : window.pageYOffset+e.clientY-menuobj.offsetHeight; else menuobj.style.top=ie5? document.body.scrollTop+event.clientY : window.pageYOffset+e.clientY; menuobj.style.visibility="visible"; return false; } function ocultar_menu_s(){ menuobj.style.visibility="hidden"; } function selec_item(e){ var firingobj=ie5? event.srcElement : e.target; if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){ if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode; //up one node firingobj.style.backgroundColor="highlight"; firingobj.style.color="white"; if (display_url==1) window.status=event.srcElement.des; } } function des_delect_item(e){ var firingobj=ie5? event.srcElement : e.target; if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){ if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode; //up one node firingobj.style.backgroundColor=""; firingobj.style.color="black"; window.status=''; } } function ir_direct_tc(e){ var firingobj=ie5? event.srcElement : e.target; if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){ if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode; if (firingobj.getAttribute("target")) window.open(firingobj.getAttribute("url"),firingobj.getAttribute("target")); else window.location=firingobj.getAttribute("url"); } } function ver_menu(e,m){ var display_url=m; var ie5=document.all&&document.getElementById; var ns6=document.getElementById&&!document.all; if (ie5||ns6) var menuobj=document.getElementById(e); if (document.all && window.print) { document.oncontextmenu = ver_menu_tcs(event); } } if (document.all && window.print) { document.body.onclick = ocultar_menu_s(); } </script> <div id="menu" class="skin" onMouseover="selec_item(event)" onMouseout="des_delect_item(event)" onClick="ir_direct_tc(event)" style="display:none;"> <div class="menuitems" url="javascript:seleccionar($('div1'));" des="Seleccionar div.">Seleccionar div </div> </div> <div id="div1" oncontextmenu='ver_menu("menu",1);return false;'>Este es un texto de prueba. Presiona clic derecho para desplegar el menu. </div>
Gracias
Salu2
