Ha llegado el momento de unirme a esta gran comunidad de diseñadores web, llevo muchísimo tiempo navegando por el foro como visitante, tenéis muchísima información de gran utilidad.
Mi consulta trata acerca de enlaces con las etiqueta <a></a>. De lo que se trata es de hacer que esta etiqueta contenga el enlace (href) apuntando a una dirección, pongamos que es "web2.htm", y que también contenga un evento "onclick" que apunta a una función JavaScript para abrir la dirección con AJAX (la función es: cargarContenido('get', 'web2.htm', 'div_contenedor'), siendo los parámetros método, URL y DIV en el que se mostrará la información).
Todo esto quedaría así:
Cita: <a href="web2.htm" onclick="cargarContenido('get', 'web2.htm', 'div_contenedor');">Abre web 2</a>
Con este código lo que me hace es hacer la función javascript y al instante abre la web. He probado a poner "return false;", "return true;" y "return null;" y no hay manera, probado en Internet Explorer 8, Firefox 3.6 y Chrome 4.
Lo que quiero que haga es que si hace click con el botón principal (el izquierdo generalmente) el contenido se cargue en la misma ventana en el DIV dedicado a ello (esto ya está conseguido), pero que también el visitante tenga la posibilidad de abrir el enlace en una ventana o pestaña nueva pulsando la rueda del ratón o con la opción que trae el menú contextual del botón secundario.
Esto lo he visto funcionando en varios sitios y he tratado de mirar como lo han conseguido pero no doy con ello, el último que recuerdo es tuenti.
Código del enlace cumpleaños en tuenti (espero que no moleste, no tiene nada privado solo es una llamada a una función):
Cita: <a class="active" href="#m=Agenda&func=view_birthdays" onclick="Request.AJAX.send('?m=Agenda&func=vie w_birthdays&ajax=1&store=1&ajax_target =canvas'); return false;"><span>Cumpleaños</span></a>
¿Ideas?
Saludos y gracias!!!
Siento el ladrillazo para la chorrada que es.
Solución:
Cita: return false;
La solución ha sido tan sencilla como revisar todo el código javascript para que no quede ningún error esto es muy importante, de lo contrario no le deis más vueltas.
Soluciones de la mano de los compañeros que han posteado por aquí abajo.