Foros del Web » Programando para Internet » Javascript »

problema con window.open

Estas en el tema de problema con window.open en el foro de Javascript en Foros del Web. Estimados tengo un problema en algunos CHROME no me funciona el tema de window.opener, lo mismo con IE, me sale el error "Permiso Denegado", necesito ...
  #1 (permalink)  
Antiguo 30/05/2013, 08:34
Avatar de Sandino  
Fecha de Ingreso: octubre-2006
Mensajes: 277
Antigüedad: 17 años, 6 meses
Puntos: 1
problema con window.open

Estimados tengo un problema en algunos CHROME no me funciona el tema de window.opener, lo mismo con IE, me sale el error "Permiso Denegado", necesito llamar a una funcion que esta en el window padre (un fancybox) y tengo este problema, el codigo que tengo en la ventana es el siguiente

Código:
                                window.opener.parent.AbrirFancy();
                                window.close();
Espero me puedan ayudar ya q es de urgencia.
Gracias y saludos
  #2 (permalink)  
Antiguo 30/05/2013, 09:33
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema con window.open

el opener solo funciona con popups, no con ventanas simuladas como el fancybox, allí no hay popups reales
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 30/05/2013, 09:42
Avatar de Sandino  
Fecha de Ingreso: octubre-2006
Mensajes: 277
Antigüedad: 17 años, 6 meses
Puntos: 1
Respuesta: problema con window.open

Si se pero la ventana no la abro de un fancybox la abro de un window.open y la funcion que abre en fancy está en el parent
  #4 (permalink)  
Antiguo 30/05/2013, 09:52
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema con window.open

en ese caso, no sé para que llamas al parent, ¿probaste con?

window.opener.AbrirFancy();
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 30/05/2013, 09:57
Avatar de Sandino  
Fecha de Ingreso: octubre-2006
Mensajes: 277
Antigüedad: 17 años, 6 meses
Puntos: 1
Respuesta: problema con window.open

Sip y aun asi me sale "Permiso Denegado"
  #6 (permalink)  
Antiguo 30/05/2013, 11:40
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema con window.open

¿estás seguro que la función AbrirFancy está dentro del scope global?: aunque sea mala practica si no está en el scope global, no podrás llamarla; lo ideal para no saturar el objeto window es crear un sólo objeto global y agregar dentro todas las funciones y variables, de ésa forma tienes un sólo objeto global para tu funcionalidad y lo llamarias así:

window.opener.miglobal.AbrirFancy();

Código Javascript:
Ver original
  1. var miglobal = {
  2.     AbrirFancy: function() {
  3.       //codigo
  4.     }
  5. };
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 30/05/2013, 13:22
Avatar de Sandino  
Fecha de Ingreso: octubre-2006
Mensajes: 277
Antigüedad: 17 años, 6 meses
Puntos: 1
Respuesta: problema con window.open

Mismo problema esto es lo que tengo padre:
Cita:
var caracteristicas = "height=500,width=800,resizable=1,scrollbars=1,loc ation=0,menubar=0";
PopUp = window.open('Callback.php?m='+ $('#mensaje-input').val(), 'Twitter Login', caracteristicas);
.
.
.
.
var miglobal = {
AbrirFancy: function(){
$('.various').trigger('click');
}
};
hijo:
Cita:
$(function() {
//window.close();
// window.opener.parent.AbrirFancy();
try {
window.opener.miglobal.AbrirFancy();
window.close();
}
catch(e) {
alert('Mensaje Publicado exitosamente');
window.close();
}
});

Etiquetas: funcion
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 22:52.