2013-08-15 3 views
5

Я собираюсь разместить мое приложение на сайте. Приложение будет показано внутри iframe. Мне нужно, чтобы мое приложение было на полном экране, есть ли в любом случае, где я могу изменить размер этого iframe, который будет содержать мое приложение из моего приложения? Мое приложение и его размещение на сайте - это не тот же домен.можно изменить ширину/высоту iframe с

$("iframe", window.parent.document).css("width", "1000px"); 

это не работает, как сайт и приложение не принадлежат к одному домену

+0

Я думаю, вы найдете это довольно трудно, если они не находятся на том же домене. Не говоря уже об этом нахмурились !! –

+0

Вам нужно использовать 'attr ('width', '1000px')' Я думаю. Но он будет работать только в том случае, если iframe принадлежит к одному домену. – jcubic

+0

@Neurofluxation Да, я не могу изменить свое приложение в полноэкранном режиме –

ответ

3

Самый безопасный способ, если ваше приложение должно запускаться на весь экран, должно выйти из iframe. То есть, определите, находится ли ваша страница в iframe, и если да, перенаправите браузер на свою страницу, чтобы он больше не находился в iframe!

This page объясняет, как это сделать:

<script type="text/javascript"> 
    if (top.location!= self.location) { 
     top.location = self.location.href; 
    } 
</script> 
+0

Этот вид отрицает всю суть вопроса, который должен изменить размер iframe. –

+2

@Neurofluxation Но на этот вопрос уже был дан ответ: «нет». Поэтому OP придется искать другие способы достижения того, чего они хотят (что , покажите приложение в полноэкранном режиме). См. Мой ответ как «План Б» или последнее усилие. –

+0

Я вас отпустил;) Проголосовал за пояснения. Извиняюсь !! –

1

Если вы контролируете обе страницы, то вы можете использовать HTML5 Post сообщение:

снаружи:

$(window).bind("message", function(e) { 
    $('iframe').attr({ 
     width: e.originalEvent.data.width, 
     height: e.originalEvent.data.height 
    }); 
}); 

внутри:

$('button').click(function() { 
    parent.postMessage({width: '200px', height: '200px'}, 'http://localhost'); 
}); 
+0

Нет, у меня нет контроля над этим !! Есть ли какой-нибудь другой способ его изменить? спасибо и +1 за ответ –

Смежные вопросы