[JS] ustawianie stylu

Odpowiedz Nowy wątek
2006-10-01 13:53
0

Chcę zrobić skrypt JS, który ustawia odpowiedzni styl dla 4 elementów w zależności od przegladarki:

function UtworzStyl(element, styl)
{
    document.getElementById(element).setAttribute("style", styl);
}

function rozmiesc(dlugosc)
{
    for(i=0;i<4;i++)
    {
        element = (i==0)?"lewyg":((i==1)?"lewyd":((i==2)?"prawyg":"prawyd")); 
        strona = (i<2)?"left":"right";
        UtworzStyl(element, "width:"+dlugosc+"px;float:"+strona);
    }
}

rozmiesc((document.all)?290:280);

Na Mozilli i FF wszystko działa,
w IE nie bardzo, ktoś wie dlaczego??


It's not just about livin' forever Johny.
The trick is livin' with yourself forever.

Pozostało 580 znaków

2006-10-01 14:06
0

Style w JS ustawia się przez document.getElementById("twoj_element").style["nazwa_stylu"] = "wartosc".


Pozdrawia DzieX

int getRandomNumber() { return 4; }

Pozostało 580 znaków

2006-10-01 14:33
0

zrob tak:

function UtworzStyl(element, styl) {
  var setStyle = function(elm, cssText) {
    var items = cssText.split(/;/);
    for (var i = 0; i < items.length; i++) {
      if (items[i].indexOf(':') == -1) continue;
      var item = items[i].split(/:/);
      for (var j = 0; j < item.length; j++) 
        item[j] = item[j].replace(/^\s*(.*?)\s*$/, '$1');
      elm.style[item[0]] = item[1];
    }
  }
  setStyle(document.getElementById(element), styl);
}

Pozostało 580 znaków

2006-10-01 15:00
0

Dlaczego nie mogę ustawić stylu za pomocą setAttribute?
Przecież można ustawić styl w ten sposób:
<div style='...'> </div>

Piechnat twoja funkcja nie działa w Mozilli, niewiem jak w IE, nie miałem możliwości sprawdzenia...


It's not just about livin' forever Johny.
The trick is livin' with yourself forever.

Pozostało 580 znaków

2006-10-01 15:53
0
ciapek888 napisał(a)

Dlaczego nie mogę ustawić stylu za pomocą setAttribute?
Przecież można ustawić styl w ten sposób:
<div style='...'> </div>

po prostu IE tego nie kupuje, przypisuje zawartość do atrybutu ale jej nie wykonuje

Piechnat twoja funkcja nie działa w Mozilli, niewiem jak w IE, nie miłem możliwości sprawdzenia...

mi tam dziala pod IE FF i Opera


Pozostało 580 znaków

2006-10-01 20:33
0

a mi nie dziala nigdzie [glowa]


It's not just about livin' forever Johny.
The trick is livin' with yourself forever.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0