Foros del Web » Programando para Internet » Javascript »

Desactivar boton derecho en nueva ventana abierta con javascript

Estas en el tema de Desactivar boton derecho en nueva ventana abierta con javascript en el foro de Javascript en Foros del Web. Hola, mi problema es el siguiente: utilizo un codigo javascript para desactivar el boton derecho en las pantallas de una pagina web, y funciona correctamente. ...
  #1 (permalink)  
Antiguo 01/12/2008, 07:41
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Desactivar boton derecho en nueva ventana abierta con javascript

Hola, mi problema es el siguiente:

utilizo un codigo javascript para desactivar el boton derecho en las pantallas de una pagina web, y funciona correctamente. Tambien utilizo otro javascript para abrir imagenes en una ventana nueva. El problema es que al abrirse esta nueva ventana con la imagen, el boton derecho esta habilitado. No se como meter el codigo javascript de desactivar el boton derecho en el codigo javascript de abrir la imagen en una nueva ventana, ya que es en este ultimo javascript donde se crea el HTML de la nueva ventana.

Este es el javascript para deshabilitar el boton derecho:

Código:
<script language="JavaScript">
 <!--
// No rightclick script v.2.5
// (c) 1998 barts1000
// [email protected]
// Don't delete this header!

var message="Función deshabilitada.\n\n©2008 HiperGrowShop\nTodos los derechos reservados"; 

// Don't edit below!

function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// --> 

</script>


Y estas son las lineas de codigo del javascript de abrir nueva ventana donde deberia introducir el javascript del boton derecho:



Código:
ventana=window.open("","",cadena); 
ventana.document.writeln ('<html><head>'); 
ventana.document.writeln('<title>'+nombre+'</title></head>'); 
ventana.document.writeln('<body marginwidth="6" marginheight="6" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" align="center" style="overflow:hidden; background-color:#000">'); 
ventana.document.writeln('<a title="Cerrar ventana" href="javascript:window.close()"><img src="'+ img +'" width="'+ ancho +'" height="'+ alto +'" style="border:#fff solid 2px" /></a>') 
ventana.document.writeln ('</body></html>');

Espero haberme explicado bien y que alguien pueda ayudarme.

Un saludo
ventana.document.close();
  #2 (permalink)  
Antiguo 01/12/2008, 08:45
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Pues es bien sencillo, en la página nueva no estás llamando al javascript. Por más que lo hayas cargado en la página padre, no tiene por qué estar disponible para la ventana hija.

Ya dicho eso, por favor no lo hagas. No sé qué motivo tengas, pero lo único que logras es molestar un poco. No ganás nada.
No evitás que alguien copie tu contenido, solamente se lo hacés más difícil a unos pocos. Esto se ha discutido mucho por acá, te recomiendo que busques alguna de las discusiones pasadas.

Y no abuses de JS. La forma en la que estás generando la página hija es dolorosa de ver.
Deberías tener un documento (estático o generado del lado del servidor) con la información necesaria y luego llamar a lo que necesites de la página padre usando window.opener


Saludos.
  #3 (permalink)  
Antiguo 01/12/2008, 09:46
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

El caso es que la pagina no es para mi, y entonces no soy yo el que decido lo del boton derecho. A mi personalmente tampoco me gusta deshabilitarlo.

Lo que quiero saber es como puedo intoducir el javascript que deshabilita el boton derecho en el segundo codigo que he puesto

Un saludo
  #4 (permalink)  
Antiguo 01/12/2008, 09:49
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Simple, vinculalo con una etiqueta <script>, tal cual y como lo hacés en la página padre.
  #5 (permalink)  
Antiguo 01/12/2008, 10:01
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Lo he intentado de esta forma, modificando el codigo del javascript para abrir la nueva ventana, pero al añadirle esas lineas no me abre la nueva ventana:

Código:
   ventana=window.open("","",cadena); 
   ventana.document.writeln ('<html><head>'); 
   ventana.document.writeln('<title>'+nombre+'</title></head>'); 
   
ventana.document.writeln('<script language="JavaScript">');
ventana.document.writeln('var message="Función deshabilitada.\n\n©2008 HiperGrowShop\nTodos los derechos reservados"; ');
ventana.document.writeln('function click(e) {');
ventana.document.writeln('if (document.all) {');
ventana.document.writeln('if (event.button == 2) {');
ventana.document.writeln('alert(message);');
ventana.document.writeln('return false;');
ventana.document.writeln('}');
ventana.document.writeln('}');
ventana.document.writeln('if (document.layers) {');
ventana.document.writeln('if (e.which == 3) {');
ventana.document.writeln('alert(message);');
ventana.document.writeln('return false;');
ventana.document.writeln('}');
ventana.document.writeln('}');
ventana.document.writeln('}');
ventana.document.writeln('if (document.layers) {');
ventana.document.writeln('document.captureEvents(Event.MOUSEDOWN);');
ventana.document.writeln('}');
ventana.document.writeln('document.onmousedown=click;');
ventana.document.writeln('</script>');


   
   ventana.document.writeln('<body marginwidth="6" marginheight="6" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" style="overflow:hidden; background-color:#000">'); 
   ventana.document.writeln('<a title="Cerrar ventana" href="javascript:window.close()"><img src="'+ img +'" style="border:#fff solid 2px" /></a>') 
   ventana.document.writeln ('</body></html>'); 
   ventana.document.close();
  #6 (permalink)  
Antiguo 01/12/2008, 11:11
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Claro pues, el problema es que no podés escribir javascript CON javascript
Pensé que tenías ese código en un archivo externo, y por lo tanto incluido mediante el atributo src de la etiqueta script.

De todas formas, te recomiendo poner el código HTML (y JS de ser necesario) de la nueva ventana en un archivo, te ahorrarás muchos problemas. ¿hay algún motivo en especial por el que lo escribas de esa forma?
  #7 (permalink)  
Antiguo 01/12/2008, 12:52
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Lo he intentado de esta manera y tampoco me funciona, me pasa lo mismo que si pongo todo el codigo javascript dentro del javascript:

Código:
ventana=window.open("","",cadena); 
   ventana.document.writeln ('<html><head>'); 
   ventana.document.writeln('<title>'+nombre+'</title></head>'); 

   ventana.document.writeln('<script src="jsBotonDerecho.js"></script>');   

   ventana.document.writeln('<body marginwidth="6" marginheight="6" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" style="overflow:hidden; background-color:#000">'); 
   ventana.document.writeln('<a title="Cerrar ventana" href="javascript:window.close()"><img src="'+ img +'" style="border:#fff solid 2px" /></a>') 
   ventana.document.writeln ('</body></html>'); 
   ventana.document.close();
  #8 (permalink)  
Antiguo 02/12/2008, 10:15
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

El codigo de jsBotonDerecho.js es este:

Código:
<!--
// No rightclick script v.2.5
// (c) 1998 barts1000
// [email protected]
// Don't delete this header!

var message="Función deshabilitada.\n\n©2008 HiperGrowShop\nTodos los derechos reservados"; 

// Don't edit below!

function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// -->
Alguien sabe que falla?
  #9 (permalink)  
Antiguo 02/12/2008, 10:47
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Ya te dijo alvlin () cuál era tu problema: No podés escribir script así como así dentro de código javascript. En lugar de esto:
Código PHP:
ventana.document.writeln('<script src="jsBotonDerecho.js"></script>'); 
Podrías usar algo así:
Código PHP:
ventana.document.writeln('<sc'+'ript src="jsBotonDerecho.js"></sc'+'ript>'); 
De esa manera no aparece dentro del código un tag script.
  #10 (permalink)  
Antiguo 03/12/2008, 02:37
 
Fecha de Ingreso: marzo-2006
Mensajes: 26
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Desactivar boton derecho en nueva ventana abierta con javascript

Gracias por vuestra ayuda, de esa forma si que me funciona.

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:57.