Foros del Web » Programando para Internet » Javascript »

Problema con Popup no resuelto en las FAQ

Estas en el tema de Problema con Popup no resuelto en las FAQ en el foro de Javascript en Foros del Web. Antes de comenzar quisiera, por un lado, además de presentarme ya que soy nueva en este foro; disculparme por reincidir en el tema de los ...
  #1 (permalink)  
Antiguo 06/03/2004, 15:06
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 2 meses
Puntos: 0
Problema con Popup no resuelto en las FAQ

Antes de comenzar quisiera, por un lado, además de presentarme ya que soy nueva en este foro; disculparme por reincidir en el tema de los popups pero no he encontrado aún solución a mi necesidad a pesar de haber leído y releído todo lo que he encontrado por la red. En segundo lugar, quisiera dar las gracias a la que luego me enteraría que es moderadora de este foro, tunait, ya que gracias a su código para crear popup adaptados al tamaño de una imagen que permitieran ver la siguiente y la anterior fotografía, mi página empieza a parecer algo decente.

Mi pregunta se refiere justamente a este código ya que desearía que, además, estuviera deshabilitada la función de botón derecho en el popup con las imágenes ya que pretendo dificultar un tanto la copia de las fotos al tratarse de mi obra y de mi persona.

Espero que sepan darme una respuesta para, si no hubiera manera de hacerlo, buscar otra solución. Muchas gracias por su atención,

My_lady
  #2 (permalink)  
Antiguo 06/03/2004, 15:28
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 20 años, 5 meses
Puntos: 0
pon esto en el head de tu pagina :

<SCRIPT language=JavaScript>
<!--
function click() {
if (event.button== 2 ) {
alert( ' NOP' );
}
}
document.onmousedown=click
// -->
</SCRIPT>

saludos
  #3 (permalink)  
Antiguo 06/03/2004, 15:43
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 2 meses
Puntos: 0
Muchas gracias por tu ayuda vicms, aunque me temo que es el código para deshabilitar la función del botón derecho del ratón en la página en que se ha insertado y no en el popup con imágenes en que lo necesito (o al menos la que tengo habilitada para tal menester es muy parecida).

Necesito la manera de deshabilitar esa función en un popup en el que no se manifiesta una html sino una imagen, vamos, que no tengo head -que yo sepa al menos- donde incluir ese código. El cóigo del popup lo he sacado de este post http://www.forosdelweb.com/showthrea...910#post266910 y la desactivación del botón derecho del mouse ha de aplicarse al pop up que se abre con las imágenes. Espero no haberlo liado demasiado con esta deficiente explicación. Muchos recuerdos y, sorbe todo, gracias por vuestro interés,

My_lady
  #4 (permalink)  
Antiguo 06/03/2004, 16:02
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hola My_Lady y vicms

aprovechando el código propuesto por vicms el script quedaría tal que así:


<script language="javascript">
//Ventana ajustada a foto versión 2 por tunait
var estilos = 'estilos.css' //nombre o ruta de hoja de estilos
var titulo = "Galería de fotos" //título de la ventana popup
afotos=new Array()
afotos[0]="fotos/tibidabo.jpg"
afotos[1]="fotos/gato.jpg"
afotos[2]="fotos/paloma.jpg"
afotos[3]="fotos/alenanene.jpg"


var ventana
function afoto(cual)
{
if(ventana){ventana.close()}
buscar(cual)
ventana=window. open('','ventana','resize=yes,scrollbars=no,resiza ble=yes')
ventana.document.writeln ('<html><head><link href="' + estilos + '" rel="stylesheet" type="text/css">')
ventana.document.writeln('<title>' + titulo + '</title></head>')
ventana.document.writeln('<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" style="overflow:hidden"><div align="center"><img id="foto" alt="mi foto" src="' + cual + '" onLoad="opener.redimensionar(this.width, this.height)" onClick="if(opener.cont==opener.afotos.length-1){opener.cont=0}else{opener.cont++};document.getE lementById(\'foto\').src =opener.afotos[opener.cont];return false" >')
ventana.document.writeln('<br /><a href="#" onClick="if(opener.cont==0){opener.cont=opener.afo tos.length-1}else{opener.cont--};document.getElementById(\'foto\').src =opener.afotos[opener.cont];return false">anterior</a>')
ventana.document.write(' | <a href="#" onClick="if(opener.cont==opener.afotos.length-1){opener.cont=0}else{opener.cont++};document.getE lementById(\'foto\').src =opener.afotos[opener.cont];return false">siguiente</a></div>')
ventana.document.writeln ('</body></html>')
ventana.document.close()
ventana.document.onmousedown=clik
}
var cont

function redimensionar(ancho, alto)
{
ventana.resizeTo(ancho+12,alto+78)
ventana.moveTo((screen.width - ancho)/2,(screen.height - (alto+78))/2)

}
function buscar(que)
{
for(c=0;c<afotos.length;c++)
{
if(afotos[c]==que)
{cont= c;
return cont
break}
}
}
function cursor(){
if(navigator.appName=="Netscape"){var manita='pointer'}
else{var manita='hand'}
for (m=0;m<document.getElementsByTagName('a').length;m ++){
document.getElementsByTagName('a')[m].className='verEjemplo'}
}
function clik() {
if (ventana.event.button== 2 ) {
ventana.alert( ' NOP' );
}
}
</script>

(espero que el foro no quite caracteres como hace siempre. Si te da error dímelo)
  #5 (permalink)  
Antiguo 06/03/2004, 16:04
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hum... efectivamente el foro ha quitado los caracteres de escape.

Para copiarlo te sugiero pinches en el botón que dice "citar". Eso te abrirá la página para responder a mi mensaje manteniendo mi mensaje original en el textarea. Copia de ahí el script
  #6 (permalink)  
Antiguo 06/03/2004, 16:25
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 2 meses
Puntos: 0
Muchísimas gracias, intuitivamente ya había incluido lo del ratón en el mismo código pero no me tiraba. No sólo funciona sino que aquí podéis ver los resultados:

http://club.telepolis.com/la_santa_web

Entrad en Soberbia, allí en la primera galería de Blanco y negro y veréis el resultado. Muchísimas gracias.

My_lady

PD: Mmmm... creo que ahora me pondré a deshabilitar la barrita de herramientas de imagen que sale siempre... ¿No sabréis cómo? Porque la etiqueta típica meta esa de <META HTTP-EQUIV="imagetollbar" CONTENT="no"> sólo vale para la propia página y volvemos a los orígenes jajaja... Algo iré pensando...

Última edición por My_lady; 06/03/2004 a las 16:38
  #7 (permalink)  
Antiguo 06/03/2004, 18:48
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 20 años, 5 meses
Puntos: 0
vaya...

es que no especificaste que el codigo era generado y no presentado jeje...

respecto a la otra pregunta y aprovechando que regresé pues donde tunait puso :

ventana.document.writeln('<title>' + titulo + '</title></head>')

queda :

ventana.document.writeln('<title>' + titulo + '</title><META HTTP-EQUIV="imagetoolbar" CONTENT="no"></head>')

salu2
  #8 (permalink)  
Antiguo 06/03/2004, 20:37
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 2 meses
Puntos: 0
Muchísimas gracias por interesaros, de verdad. Al final lo de la etiqueta Meta se me ocurrió solita y, como en la fábula, sonó la flauta jejeje... Ahora ya será más sencillo el resto de lá página. Espero algún día poder yo aportar algo al foro y no sólo preguntar jejeje. Muchos recuerdos,

My_lady
  #9 (permalink)  
Antiguo 16/07/2004, 10:10
 
Fecha de Ingreso: julio-2004
Mensajes: 1
Antigüedad: 19 años, 9 meses
Puntos: 0
A mi me pasa lo mismo

Hola, a mi me sucede lo mismo, quiero anular el click derecho, pero con la version 1 de Tunait, ¿me puedes indicar como hacerlo en la ventana que se abre? gracias

creo que tengo que añadir al final

function cursor(){
if(navigator.appName=="Netscape"){var manita='pointer'}
else{var manita='hand'}
for (m=0;m<document.getElementsByTagName('a').length;m ++){
document.getElementsByTagName('a')[m].className='verEjemplo'}
}
function clik() {
if (ventana.event.button== 2 ) {
ventana.alert( ' NOP' );
}
}

y ventana.document.onmousedown=clik antes de redimensionar..

pero este tipo de click derecho es facil de saltar, hay uno que ni siquiera sale ventana de alert, que ni siquiera sale mensaje ni nada, pero no hay manera de aplicarlo a la nueva ventana..
este es el codigo:

<script language="JavaScript">

var message="";
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!docum ent.all)) {
if (e.which==1||e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document. onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontext menu=clickIE;}
document.oncontextmenu=new Function("return false")

function disableselect(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function ("return false")
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</script>


creo que es el mismo o parecido al que Kaopectate hace referencia en esta web (apartado 4 - Boton derecho):
http://www.forosdelweb.com/s59ad702f...msg105325.html

pero, como lo adapto para la ventana nueva?

Última edición por neocom; 16/07/2004 a las 11:57 Razón: Actualizar
  #10 (permalink)  
Antiguo 08/11/2005, 14:40
Avatar de Adooland  
Fecha de Ingreso: mayo-2004
Mensajes: 16
Antigüedad: 20 años
Puntos: 0
Yo tengo otro script

Lo he sacado de dynamicdrive y tp da ninguan seña al hacer el clic con el botón derecho:

</script>
<script language=JavaScript>
<!--

var message="";
///////////////////////////////////
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!docum ent.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document. onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontext menu=clickIE;}

document.oncontextmenu=new Function("return false")
// -->
</script>

Ta luegooo

Porfi resolved el ponerlo en la nueva ventanita en la versión en la que el script muestra la imagen centrada en el pop-up!

Asiasss!

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 13:39.