Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   iframe | закрыть если... (https://javascript.ru/forum/events/1808-iframe-%7C-zakryt-esli.html)

Geek 19.09.2008 13:22

iframe | закрыть если...
 
Хотел узнать, а можно ли скрыть iframe если он вернул определённый результат.

Просто как пример. Поступило личное сообщение. Если оно есть то показываем его в iframe, а если нет то скрываем iframe.

Такое возможно?

Geek 19.09.2008 13:30

Или например если первый символ в iframe "a" значит показываем iframe, а если символа или нет или "b" то скрываем iframe

ZoNT 19.09.2008 14:00

Если во фрейм загружен документ с другого домена, то никак, так как кроссдоменный доступ запрещён. Если пришло личное сообщение - можешь создать фрейм на лету и открывать в нём что угодно. А скрывать его не надо, так как его до этого просто не будет :)

misha_turist 30.09.2008 11:52

А если всё таки нужно скрывать/отображать iframe?

ZoNT 30.09.2008 12:30

"У вас хлеб есть?" - "нет"
"Что совсем нет?"...

без комментариев...

misha_turist 30.09.2008 16:23

Вот вариант, сделаный не на прямую и криво работающий под Мозилу. А именно после развёртывания фрайм ужимается по ширене. Кстати, почему?

<script language="JavaScript">
<!-- Comment out script for old browsers
function getIFrameYSize() {
ScreenRes = screen.width;
if (ScreenRes == "1280") res = 684;
else if (ScreenRes == "1024") res = 430;
else if (ScreenRes == "800") res = 290;
else if (ScreenRes == "640") res = 230;
else if (ScreenRes == "1152") res = 527;
else if (ScreenRes == "1600") res = 840;
else res = 430;
return res;
}
function getLeftIFrameXSize() {
ScreenRes = screen.width;
if (ScreenRes == "1280") res = "25%";
else if (ScreenRes == "1024") res = "25%";
else if (ScreenRes == "800") res = "25%";
else if (ScreenRes == "640") res = "25%";
else if (ScreenRes == "1152") res = "25%";
else if (ScreenRes == "1600") res = "20%";
else res = "30%";
return res;
}
function getRightIFrameXSize() {
ScreenRes = screen.width;
if (ScreenRes == "1280") res = "74%";
else if (ScreenRes == "1024") res = "74%";
else if (ScreenRes == "800") res = "74%";
else if (ScreenRes == "640") res = "74%";
else if (ScreenRes == "1152") res = "74%";
else if (ScreenRes == "1600") res = "79%";
else res = "70%";
return res;
}

function showTree() {
var pict = document.getElementById('menu_new_1'); 
if (pict.style.display !== 'block')
{pict.style.display = 'block';}; 
}

function hideTree() {
var pict = document.getElementById('menu_new_1'); 
if (pict.style.display !== 'none')
{pict.style.display = 'none';};
}


//-->
</script>
<a href="JavaScript:hideTree();">hide</a> <a href="JavaScript:showTree();">show</a>

<TABLE  BORDER="1" WIDTH="100%" CELLPADDING="2" CELLSPACING="0" class="RegionBorder">
<TR>
<TD class="RegionHeaderColor" WIDTH="100%"><TABLE  WIDTH=100% border=1>
<TR>
<!--<TD>-->


<script language="JavaScript">
<!--
document.write("<td height=\""+getIFrameYSize()+"\" width=\""+getLeftIFrameXSize() +"\" id=\"menu_new_1\"><IFRAME src=\"\" width=\"100%\"></IFRAME></td>");
document.write("<td height=\""+getIFrameYSize()+"\" width=\""+getRightIFrameXSize()+"\"><IFRAME src=\"\" name=\"docfrm\" scrolling=\"auto\" height=\""+getIFrameYSize()+"\" width=\"100%\"></IFRAME></td>");
//-->
</script>
<!--</TD>-->
</TR>
</TABLE>


Часовой пояс GMT +3, время: 08:16.