eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwJS- Jak dobrać się do atrybutu style?
Ilość wypowiedzi w tym wątku: 32

  • 21. Data: 2013-10-10 09:06:00
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Neevor <p...@n...ru>

    Marek wrote:

    > Czy jest możliwość modyfikowania atrybutu inline'owego style poprzez
    > podanie tekstu? Mam na myśli coś takiego:
    >
    chyba nie chce mi się pracować ;)
    jQueryUI widgetFactory
    pisany z głowy czyli z niczego i nie testowany ;P

    var styleWizard={
    options: { styles=[] },
    _init: function(){
    var tmp=this.element.attr('style').split(';');
    for(var i=0; i<tmp.length; i++){
    var sv=tmp[i].split('=');
    this.options.styles.push( {name: sv[0], value: sv[1]} );
    }
    },
    _getStyle: function(name, idxOnly){
    for(var i=0; i<this.options.styles.length; i++)
    if(this.options.styles[i][name]==name)
    return idxOnly?i:this.options.styles[i];
    return undefined;
    },
    _assignStyles: function(){
    var stylestr='';
    for(var i=0; i<this.options.styles.length; i++)
    stylestr += this.options.styles[i]['name']+':
    '+this.options.styles[i]['value']+';';
    this.element.attr('style', stylestr);
    },
    getStyle: function(name){
    return this._getStyle(name, false)['value'];
    },
    setStyle: function(name, value){
    var idx=this._getStyle(name, true);
    if(typeof idx === 'undefined')
    this.options.styles.push( {name: name, value: value} );
    else
    this.options.styles[idx]['name']= value;
    this._assignStyles();
    },
    setStyleStr: function(str){
    var tmp=str.split(';');
    for(var i=0; i<tmp.length; i++){
    var sv=tmp[i].split('=');
    this.setStyle(sv[0], sv[1]);
    }
    }
    }

    $.widget('neevor.styleWizard', styleWizard);

    Pomijam sensowność takiego rozwiązania w jQuery skoro jest $elem.css()
    ale co tam, wszystko jest lepsze od pracy c'nie ;P
    --
    GCA/ED d s+:++ a C++ ULA P+++ L+ E--- W+++ N+++ o+ K- w+++ O+ M+ V-
    PS PE++ Y-- PGP- t-- 5-- X+ !tv R b+ DI-- D+ G e++ h--- r+++ z+++*


  • 22. Data: 2013-10-10 09:08:17
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Neevor <p...@n...ru>

    Marek wrote:

    > Czy jest możliwość modyfikowania atrybutu inline'owego style poprzez
    > podanie tekstu? Mam na myśli coś takiego:
    >
    chyba nie chce mi się pracować ;)
    jQueryUI widgetFactory
    pisany z głowy czyli z niczego i nie testowany ;P

    var styleWizard={
    options: { styles=[] },
    _init: function(){
    var tmp=this.element.attr('style').split(';');
    for(var i=0; i<tmp.length; i++){
    var sv=tmp[i].split('=');
    this.options.styles.push( {name: sv[0], value: sv[1]} );
    }
    },
    _getStyle: function(name, idxOnly){
    for(var i=0; i<this.options.styles.length; i++)
    if(this.options.styles[i]['name']==name)
    return idxOnly?i:this.options.styles[i];
    return undefined;
    },
    _assignStyles: function(){
    var stylestr='';
    for(var i=0; i<this.options.styles.length; i++)
    stylestr += this.options.styles[i]['name']+':
    '+this.options.styles[i]['value']+';';
    this.element.attr('style', stylestr);
    },
    getStyle: function(name){
    return this._getStyle(name, false)['value'];
    },
    setStyle: function(name, value){
    var idx=this._getStyle(name, true);
    if(typeof idx === 'undefined')
    this.options.styles.push( {name: name, value: value} );
    else
    this.options.styles[idx]['name']= value;
    this._assignStyles();
    },
    setStyleStr: function(str){
    var tmp=str.split(';');
    for(var i=0; i<tmp.length; i++){
    var sv=tmp[i].split('=');
    this.setStyle(sv[0], sv[1]);
    }
    }
    }

    $.widget('neevor.styleWizard', styleWizard);

    Pomijam sensowność takiego rozwiązania w jQuery skoro jest $elem.css()
    ale co tam, wszystko jest lepsze od pracy c'nie ;P

    Edit: wracam do pracy, bo za dużo bugów w tym znajduję ;)
    --
    GCA/ED d s+:++ a C++ ULA P+++ L+ E--- W+++ N+++ o+ K- w+++ O+ M+ V-
    PS PE++ Y-- PGP- t-- 5-- X+ !tv R b+ DI-- D+ G e++ h--- r+++ z+++*


  • 23. Data: 2013-10-10 09:16:20
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: n...@t...net.pl

    Myślałem, że chcesz generować listing.

    Nie musisz niczego dodawać do stylu elementu bo te style nadali już
    producenci przeglądarek z domyślnymi wartościami.

    Jak dasz na www element

    <div></div>

    to zapewniam cię, że tam też jest: font, color, width...

    Programista może tylko zmieniać wartości domyślne (nie tworzy ich)
    np tak:

    (kod dla IE)

    <div id="d2" onClick="foo()">div2 - click me...</div>;

    function foo()
    {
    d2.style.color="red";
    d2.style.fontSize="40px";
    }


    Czyli user musi wywołać jakąś akcję aby zmienić styl.

    Andrzej.


  • 24. Data: 2013-10-10 15:29:42
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Marek <p...@s...com>

    W dniu 2013-10-10 05:02, u...@d...invalid pisze:
    >
    > Z pewnością Twoje rozwiązanie jest bardziej wydajne, ale czasem warto
    > przedłożyć nad prostotę. Co do jQuery to 34kb (compressed), no a
    > przeglądarki przecież to trzymają w cache, więc imo nie problem.

    Nie porównuj moich możliwości finansowych do Allegro np :-) Ja już w tej
    chwili za transfer płacę wiele tysięcy zł rocznie więc jeśli nie
    potrzebuję wielkiej biblioteki, to jej nie używam. Mam własne,
    wielokrotnie mniejsze. Różnica między 10 kB (compressed) a 34kB
    (compressed) to sporo złotówek mniej.

    A po drugie - trzymanie w cache JS przez przeglądarki działa tylko wtedy
    gdy użytkownik już był na tej stronie. Nowych użytkowników mam
    miesięcznie w tysiącach.

    --
    Pozdrawiam
    Marek


  • 25. Data: 2013-10-10 15:34:06
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Marek <p...@s...com>

    W dniu 2013-10-10 09:16, n...@t...net.pl pisze:
    > Myślałem, że chcesz generować listing.
    >
    > Nie musisz niczego dodawać do stylu elementu bo te style nadali już
    > producenci przeglądarek z domyślnymi wartościami.

    Nie rozumiem? Chyba nie chcesz powiedzieć, że mam się cieszyć domyślnym
    stylem jakiegokolwiek elementu?

    >
    > Czyli user musi wywołać jakąś akcję aby zmienić styl.

    Niekoniecznie user, może timer w JS, może dynamicznie Ajax coś załadować
    i zmienić. No ale do czego zmierzasz nie łapię? Nie widzę korelacji z
    tematem dyskusji.


    --
    Pozdrawiam
    Marek


  • 26. Data: 2013-10-10 15:38:24
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Marek <p...@s...com>


    > Edit: wracam do pracy, bo za dużo bugów w tym znajduję ;)

    A ja zalazłem w miedzyczasie najprostsze rozwiązanie i to bez stosowania
    jQuery i innych złożonych metod. Wcześniej przeoczyłem dość istotną
    właściwość obiektu style. Oto banalne rozwiązanie:

    var mojeStyleInlineowe="color: red; font-weight: bold; ...";

    element.style.cssText=mojeStyleInlineowe;

    :-D


    --
    Pozdrawiam
    Marek


  • 27. Data: 2013-10-10 17:26:23
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Paweł Piskorz <n...@p...nie>

    W dniu 2013-10-10 15:29, Marek pisze:
    > Nie porównuj moich możliwości finansowych do Allegro np :-) Ja już w tej
    > chwili za transfer płacę wiele tysięcy zł rocznie więc jeśli nie
    > potrzebuję wielkiej biblioteki, to jej nie używam.

    jQuery jak ma nie tylko własny CDN, ale jest dostępny na wielu innych,
    więc o stransfer się martwić nie musisz.


    --
    Pozdrawiam,
    Paweł "PablO" Piskorz


  • 28. Data: 2013-10-10 23:52:18
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Marek <p...@s...com>

    W dniu 2013-10-10 17:26, Paweł Piskorz pisze:
    >
    > jQuery jak ma nie tylko własny CDN, ale jest dostępny na wielu innych,
    > więc o stransfer się martwić nie musisz.

    Ups... musiałem taką opcję przeoczyć. A czy nie spotka mnie jakaś
    niespodzianka jak przy mapach Google, że przy jakieś ilości odsłon
    serwer "powie" "spadaj albo zapłać" ?


    --
    Pozdrawiam
    Marek


  • 29. Data: 2013-10-11 08:24:25
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: n...@t...net.pl

    W dniu czwartek, 10 października 2013 15:34:06 UTC+2 użytkownik Marek napisał:
    > W dniu 2013-10-10 09:16, n...@t...net.pl pisze:


    Sorry, czytając wszystkie posty coś mi się pomerdało,
    że chcesz dodawać nowe style, sorry.



    > > Czyli user musi wywołać jakąś akcję aby zmienić styl.
    >
    >
    >
    > Niekoniecznie user, może timer w JS, może dynamicznie Ajax coś załadować
    >
    > i zmienić. No ale do czego zmierzasz nie łapię? Nie widzę korelacji z
    >
    > tematem dyskusji.
    >


    Pisałeś, że styl ma zależeć od usera.
    Ale najważniejsze, że już znalazłeś proste rozwiązanie.

    Pozdrawiam

    Andrzej.


  • 30. Data: 2013-10-11 13:42:14
    Temat: Re: JS- Jak dobrać się do atrybutu style?
    Od: Paweł Piskorz <n...@p...nie>

    W dniu 2013-10-10 23:52, Marek pisze:
    > W dniu 2013-10-10 17:26, Paweł Piskorz pisze:
    >>
    >> jQuery jak ma nie tylko własny CDN, ale jest dostępny na wielu innych,
    >> więc o stransfer się martwić nie musisz.
    >
    > Ups... musiałem taką opcję przeoczyć. A czy nie spotka mnie jakaś
    > niespodzianka jak przy mapach Google, że przy jakieś ilości odsłon
    > serwer "powie" "spadaj albo zapłać" ?

    O ile się nie mylę to GMaps ma taką licencję (limitowana ilość
    wyświetleń dla wersji bezpłatnej), także poczytaj warunki wybranego
    CDN-a aby się dowiedzieć czy mają jakieś limity.


    --
    Pozdrawiam,
    Paweł "PablO" Piskorz

strony : 1 . 2 . [ 3 ] . 4


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: