Javascript; window onresize

poruka: 3
|
čitano: 1.107
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
protjeran
offline
Javascript; window onresize

Imam za sada gadan problem...

 

Znaći, imam složen layout koji nije sastavljen od čistog CSSa, nego pomoću javascripta definiram dimenzije i odnose.

Sve funkcionira odlićno dok se ne promjeni window size jer "šteka". Ne uhvati svaki put kad se window poveća.

 

Prilažem prototip koda; jer sam projekt je poveći al princip je isti.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Resize me</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(function(){
setwindow();

window.onresize = function(){
    setwindow()
}

// -> ovo je na neki naćin zakrpa no ne funkcionira glatko - zašteka par sekundi
// ako stavim interval/timeout isti efekt dobijem
/*window.onresize = function(){
setwindow()
    for(i=0; i<500; i++){
        setwindow()
    }
}*/

// -> chrome = ok ; opera, ie, ff != ok
/*window.onresize = function(){
    setwindow(); 
}*/

// -> chrome = ok ; opera, ie, ff != ok
/*$(window).resize(function(){
    setwindow(); 
})*/

});
function setwindow(){
  h = $('.frame').height() - $('.head').height() - $('.foot').height();
  $('.menu').height( h + 'px')

  //-> prikaz dimenzija
  //alert('onresize event!')
  $('.menu ul').append('<li>new size = '+h+' px</li>') 
}


</script>
<style type="text/css">
body {
  margin:0;
  width:100%;
  height:100%;
}ul {
  list-style-type:decimal; 
}div {
  position:absolute;
}.frame {
  width:100%;
  height:100%;
}.head {
  width:100%;
  height:50px;
  background:#CCC;
}.menu {
  overflow:auto;
  color:#FFF;
  top:50px;
  width:200px;
  height:50px;
  background:#888;
}.foot {
  bottom:0px;
  width:100%;
  height:50px;
  background:#CCC;
}
</style>
</head>
<body>
    <div class="frame">
        <div class="head">[ head ]</div>
        <div class="menu">[ menu ]<ul></ul></div>
        <div class="foot">[ foot ]</div>
    </div>
</div>
</body>
</html>

 

Bilo kakva sugestija je više nego dobrodošla.

 

Znam da se može to napraviti samo putem CSSa no meni je ovakav princip layouta potreban jer trebam znat dimenzije "menu"-a u pixelima.

The CAPS LOCK key is evil and must be destroyed
Moj PC  
0 0 hvala 0
14 godina
protjeran
offline
Javascript; window onresize

ideas anybody??

The CAPS LOCK key is evil and must be destroyed
Moj PC  
0 0 hvala 0
17 godina
moderator
offline
Re: Javascript; window onresize

Zašto nemaš točke-zareze na kraju naredbi u funkciji setwindow?

 

Jel ti se događaju kakve greške - koje vidiš u JavaScript konzoli u nekom web-pregledniku?

 

Pogledaj si i ovu stranicu: http://stackoverflow.com/questions/1500312/javascript-onresize-event

 

 

BTW "naćin" i "odlićno"? Ružno za vidjeti. {#}

Poruka je uređivana zadnji put pet 22.7.2011 20:06 (mbaksa).
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice