2012-07-12 17 views
6

Estoy intentando utilizar Chrome-Frame en un sitio que estoy construyendo. En IE8 y abajo, todo funciona bien ... En IE9 me sale este error:Marco de Chrome: Acceso denegado error en IE9

SCRIPT5: Access is denied. 
cf-dlpage.js, line78 character 209 

Ni idea de qué hacer!

aquí es el condicional que está provocando el comportamiento:

<!--[if lte IE 9]> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script> 
    <style> 
     body { 
      overflow-y:hidden; 
     } 
     .chromeFrameOverlayContent { 
      border:none; 
      overflow:hidden;    
     } 
     .chromeFrameOverlayContent iframe { 
      border:none; 
      overflow:hidden; 
     } 
     .chromeFrameOverlayCloseBar { 
      display:none; 
     } 
     .chromeFrameOverlayUnderlay { 
      background-image:url(/img/bg.png); 
      opacity: 1; 
      filter: alpha(opacity = 100); 
     } 

    </style> 
    <script type="text/javascript"> 
    window.onload = function() { 
     CFInstall.check({ 
      url: "/fix/update.html", 
      mode: "overlay", 
      destination: "/" 
     }); 
    }; 
    </script> 
    <![endif]--> 

Cualquier ayuda muy apreciada!

+0

Boleto relacionado aquí: http://code.google.com/p/chromium/issues/detail?id=135297 –

Respuesta

1

Pruebe this parece que está relacionado con su problema. Espero que ayude. lea el comentario de [email protected], es el último comentario en este momento.

0

El problema es causado por esto:

  1. Su página está en www.example.com
  2. La rutina de instalación crea un iframe con una url www.google.com/...
  3. La página iframe sí ejecuta Javascript y trata de leer window.parent, pero ...
  4. ... esto no está permitido porque ambos marcos tienen diferentes dominios.

Las únicas soluciones parecen ser:

  1. Crear su propio script de instalación
  2. Google corrige su guión

perdí un día entero tratando de resolver este problema (anidado marcos, scripts personalizados, enrutamiento de solicitudes de Google a través de mi servidor, ...) hasta que me di cuenta por qué Google parece ignorar este error:

La mayoría de las personas simplemente no notan el problema. La instalación se realiza con éxito, independientemente de este error. Para obtener realmente un cuadro de mensaje, debe habilitar la depuración de Javascript o la función Mostrar errores de Javascript.

Usted y yo hemos habilitado dichas funciones porque somos desarrolladores, así que, naturalmente, nos enloquecemos, pero Average Joe no se dará cuenta de nada.