Задать свойство стиля через javascript. Вопрос

Discussion in 'PHP' started by Nicca, 8 Jul 2009.

  1. Nicca

    Nicca Elder - Старейшина

    Joined:
    11 Jan 2008
    Messages:
    93
    Likes Received:
    4
    Reputations:
    -6
    Подскажите как правильно задать свойство background и background-position в яваскрипте?

    Задаю так:
    mItems[was].getElementsByTagName('span')[0].style.background="url(http://site.com/images/men_r.gif) no-repeat right top; background-position:100% -24px";

    так работает, но только в ИЕ, в остальных не хочет..

    Если задаю так:
    mItems[was].getElementsByTagName('span')[0].style.background="url(http://site.com/images/men_r.gif) no-repeat right top";
    mItems[was].getElementsByTagName('span')[0].style.background-position="100% -24px";
    то вобще нигде не работает
     
  2. PaCo

    PaCo Elder - Старейшина

    Joined:
    6 Feb 2008
    Messages:
    436
    Likes Received:
    138
    Reputations:
    25
    Обозначь класс или ид в стиле а через js присваИвай
     
  3. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    ну как таковой DOM элемент style не держит много чего...
    лучше используй свойство ClassName, меньше заморотов.

    <span class="a" onclick="this.ClassName='b'">
     
    _________________________
  4. Nicca

    Nicca Elder - Старейшина

    Joined:
    11 Jan 2008
    Messages:
    93
    Likes Received:
    4
    Reputations:
    -6
    Не силен в js, да и ООП только в теории знаю. Может на примере покажете?

    а DOM держит ClassName?
    и как присвоить стиль например если он описан так:
    #hor_menu #current a span { }
     
  5. PaCo

    PaCo Elder - Старейшина

    Joined:
    6 Feb 2008
    Messages:
    436
    Likes Received:
    138
    Reputations:
    25
    ну вот так можно например:
     
  6. Nicca

    Nicca Elder - Старейшина

    Joined:
    11 Jan 2008
    Messages:
    93
    Likes Received:
    4
    Reputations:
    -6
    Вбщем разобрался:
    mItems[was].getElementsByTagName('span')[0].style.background="url(http://agri.com/images/men_r.gif) no-repeat 100% -24px";

    так держит во всех браузерах
     
  7. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    obj.style.backgroundAttachment
    obj.style.backgroundColor
    obj.style.backgroundImage
    obj.style.backgroundPosition
    obj.style.backgroundRepeat

    #hor_menu тут лишние буквы, а так вот можно:

    #current a span, .class_for_js { }

    и уже .class_for_js присваиваешь через className
     
    #7 imajo.ati, 8 Jul 2009
    Last edited: 8 Jul 2009