Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   Изменение вида на странице (https://javascript.ru/forum/css-html-internet-explorer/15363-izmenenie-vida-na-stranice.html)

Golovastik 23.02.2011 23:06

Изменение вида на странице
 
У меня монитор 19 дюймов и открыто окно браузера на всю страницу.
У меня в результате этого кода, нарисуется табличка 2Х2.
Если у меня будет открыто окно браузера шириной меньше 800 пикселей, у меня каждая картинка перейдёт на другую строку.

Как мне сделать чтоб когда я открою окно браузера на весь экран, а потом буду уменьшать его до меньше 800 шириной сработал скрипт, а не только при обновлении страницы?

Попробовал написать так, при уменьшении окна браузера, всё что находится за переделами:
<script>.......</script> пропадает, а только одни кратинки показываются в изменённом виде.
Код:

<script type="text/javascript">
window.onresize = sec;
function sec(){
$b = document.documentElement.clientWidth;
alert($b);
if($b<=1240)
document.write('<div align="center"><img src="../img/1_14.2.jpg" />
<img style="padding:5px;" src="../img/1_14.3.jpg" />
<img src="../img/1_14.4.jpg" />
<img style="padding:5px;" src="../img/1_14.5.jpg" /></div>');
else
  {
 document.write('<table cellspacing="5"><tr><td><img src="../img/1_14.2.jpg" />
</td><td><img src="../img/1_14.3.jpg" /></td></tr><tr><td>
<img src="../img/1_14.4.jpg" /></td><td><img src="../img/1_14.5.jpg" />
</td></tr></table>');
    }
}
setInterval(sec(),1);

</script>

Попробовал так, чего-то просто ничего не происходит.
<script type="text/javascript">
document.body.onresize = sec; 
function sec(){
$b = document.documentElement.clientWidth;
if($b<=1240)
document.getElementById(fanta).innerHTML = "У вас разрешение маленькое!";
/*document.write('<div align="center"><img src="../img/1_14.2.jpg" />
<img style="padding:5px;" src="../img/1_14.3.jpg" />
<img src="../img/1_14.4.jpg" />
<img style="padding:5px;" src="../img/1_14.5.jpg" /></div>');
*/
else
   {
   /*document.write('<table cellspacing="5"><tr><td>
<img src="../img/1_14.2.jpg" /></td><td><img src="../img/1_14.3.jpg" />
</td></tr><tr><td><img src="../img/1_14.4.jpg" /></td><td>
<img src="../img/1_14.5.jpg" /></td></tr></table>'); */
document.getElementById(kola).innerHTML = "Сейчас, у вас разрешение больше 800 пикселей";
    }
	
}
setInterval(sec(),1)
</script>

<div id="fanta"></div>
<div id="kola"></div>
...........................................дальше пошёл хтмл


1)Браузер Ие, выдатё такое при запуске,фото вложил.
2)Если запустить данный код в др.браузерах не ИЕ, развёрнутый на весь
экран браузер запустить ничего абсолютно не происходит, происходит
только в результате уменьшения окна ,что делать?
А браузер мозила не регирует никак, вообще ничего не срабатывает в нём.

NoResponse 24.02.2011 01:20

getElementById("fanta")
getElementById("kola")

на сколько помню, в ие еще при загрузке страницы срабатывает onresize, в других браузерах вроде как нет... в чем то могу ошибаться

ksa 24.02.2011 09:11

Golovastik, если использовать не табличку, а дивы с

float: left;


можно даже обойтись без скрипта. Картинки будут переноситься "на следующую строку" если не будут целиком помещаться в контейнер, их содержащий...


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