javascript - plantillas - Redirigir de la página de lienzo de Facebook al sitio web
plantillas divi (5)
¿qué tal si usas el siguiente código?
<script type=''text/javascript''>
top.location.href = ''http://www.yousite.com'';
</script>
¿Hay alguna manera de redirigir desde mi página de lienzo de Facebook a mi sitio web externo? He visto blogs y stackoverflow respuestas del formulario:
<script>
window.top.location = ''http://www.yoursite.com/'';
</script>
Lamentablemente, este tipo de soluciones nunca funcionan. He intentado top.location.href, window.location y location.href también ... nada funciona. ¿Eliminó Facebook la posibilidad de redireccionar desde javascript analizando este tipo de código? ¿Hay alguna forma de redirigir aún?
ACTUALIZACIÓN : Lo que ocurre es que la página web actúa como si nunca hubiera habido una instrucción de redirección de JavaScript. Y de hecho, cuando miro el código fuente a través de firebug no veo redireccionamientos de javascript.
ACTUALIZACIÓN 2 : obtengo los siguientes errores de JavaScript de mi página de lienzo cuando pruebo window.top.location = ''http://www.yoursite.com/'';
y las otras variaciones anteriores. Parece que Facebook no permite el acceso a la ventana, a la cima oa la ubicación de las variables javascript globales:
Uncaught ReferenceError: a217374027657_location is not defined
Uncaught ReferenceError: a217374027657_window is not defined
Uncaught ReferenceError: a217374027657_top is not defined
Curiosamente, document.location = ''http://www.yoursite.com/'';
funciona en que no hay excepciones ... pero, por supuesto, la página web no se redirecciona.
ACTUALIZACIÓN 3 : ¡Lo descubrí! La redirección de Javascript solo funciona con lienzos de iframe. Tuve que cambiar mi configuración en la pantalla avanzada para usar iframe en lugar de FBML.
Acabo de hacer esto en mi aplicación:
if(window.top.location.href != window.location.href){ window.top.location.href = window.location.href; } Simplemente coloca eso en la parte superior de tu página de lienzo. Si la href superior no coincide con la URL de la que se extrae el contenido de su lienzo, lo redirige a su sitio.
De mi script
<script type=''text/javascript''>
top.location.href = ''http://riseofkings.net/fb.php?setcook&cook=cookhere'';
</script>
Y siempre funcionó. ¿Lanza algún error, excepción o más?
Si puede usar PHP, intente die()
después de este código de JavaScript
Esto no es posible, Facebook inhabilitó esta funcionalidad a propósito. Tendría que permanecer en su lienzo, abrir una ventana emergente (si es posible) o simplemente crear un enlace para que el usuario haga clic en.
Tenga cuidado, redirigir al usuario a un sitio externo puede violar la política de la plataforma
El objetivo principal de su aplicación Canvas o Page Tab en Facebook no debe ser simplemente redirigir a los usuarios fuera de la experiencia de Facebook a un sitio externo.