За последние 24 часа нас посетили 17990 программистов и 1650 роботов. Сейчас ищут 1199 программистов ...

Наложение div'ов и изменение их фона селекторами

Тема в разделе "HTML и CSS", создана пользователем RainBowDash, 17 июн 2015.

  1. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Есть 3 div'a , наложенные друг на друга (в перспективе конечно же). И есть 2 селектора с выпадающим списком, в которых соответственно есть разные пункты с разными значениями. Скажу сразу, что количество групп этих div'ов не ограничивается одной.
    Можно ли сделать так(и как конечно же) , что бы при изменении значения селектора с выпадающим списком, который имеет своё уникальное имя , изменялся фон одного из div'ов в группе оных. Селектора 2 на каждую группу из 3 div'ов.
    Код (PHP):
    1. <div class="11"><div class="12"><div class="13"> 
    2. </div> </div> </div>
    3. <select name="селектор1" required>
    4.       <option></option>
    5.       <option value="1">1</option>
    6.       <option value="2">2</option> 
    7.       </select>
    8. <select name="селектор2" required>
    9.       <option></option>
    10.       <option value="1">1</option>
    11.       <option value="2">2</option> 
    12.       </select>
    13.  
    [​IMG]

    PHP, JavaScript, SQL и другой код пишите внутри тегов
    Код ( (Unknown Language)):
    1. [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
     
  2. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    JavaScript может, JavaScript может все что угодно...
    на onchange селекта кидаем событие, по которому класс нужного дива меняется по указанному вами правилу, в зависимости от значения селекта.

    Запили каркас с дивами, цссом и формочками, подмогну обмазать это все скриптом.
     
  3. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Я кстате гуглил про onchange , но что то не срослось...

    Код (PHP):
    1. <style type="text/css">
    2. .bf1 {
    3. background-image: url(урл);
    4.  display: block;
    5.     margin: 0 auto !important;
    6. }
    7. .bf2 {
    8. background-image: url(урл);
    9.  display: block;
    10.     margin: 0 auto !important;
    11. }
    12. .bf3 {
    13. background-image: url(урл);
    14.  display: block;
    15.     margin: 0 auto !important;
    16. }
    17. .bf4 {
    18. background-image: url(урл);
    19.  display: block;
    20.     margin: 0 auto !important;
    21. }
    22.  
    23. .bc1 {
    24. background-image: url(урл);
    25.  display: block;
    26.     margin: 0 auto !important;
    27. }
    28. .bc2 {
    29. background-image: url(урл);
    30.  display: block;
    31.     margin: 0 auto !important;
    32. }
    33. </style>
    34. <div class="5fon"><div class="тут будет присвоена статичная картинка" ><div class="5cover"> </div> </div> </div>
    35. <select name="bg5fon">
    36.           <option value="1">1</option>
    37.           <option value="2">2</option>
    38.           <option value="3">3</option>
    39.       <option value="4">4</option>
    40. </select>
    41. <br>
    42. <select name="bg5cover" required>
    43.       <option></option>
    44.       <option value="1">1</option>
    45.       <option value="2">2</option>
    46.       </select>
    Допустим так .
    Первый селектор(bg5fon) должен влиять на DIV с классом 5fon(css bf1,2,3,4...), второй(bg5cover) на 5cover(css bc1,2...).
    групп селекторов несколько и они отличаются только цифрами bg(5,11,21)fon/cover. Ну и дивов соответственно по 3 на каждые 2 селектора.
     
  4. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
  5. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Какая ахрененная ссылка получилась :D
    Спасибо , покопаюсь , но уже вижу то что тут лишнее. Стили будут одни на все , не будет уникальных стилей для конкретных групп.
    Но я так понимаю можно просто удалить groupId откуда то и будет просто cover(value) fon(value) ?
     
  6. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Да, я тоже приорал с этого дитя рандома.

    Переключаемые классы не содержат номер группы, они как раз везде одинаковые.
    groupID нужен, чтобы, при перезаписи класса, восстановить тот, что был там ранее с уже дописанным дополнением.
    Просто я подумал, что цифра "5" в названиях означает, что селекторы с этой цифрой влияют на дивы с этой цифрой. Стало быть это номер группы, коих может быть много. Потому и сделал универсальную привязку.
     
  7. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Скрипт , работает как нужно , правда при первой смене селекта ничего не происходит. Результат будет только после второй попытки.
    Это можно как то побороть ?

    И вполне очевидно , что после смены стиля div'у , он его теряет...
    Может по name тогда их "вычислять" ?
     
  8. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Методом научного тыка , смог понять как заставить скрипт изменять Class в диве находя его по name="" , но только работает всёравно только со второго передёргивания селектора...
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    У меня все работает сразу, понятия не имею, о чем ты.
     
  10. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    Возможно у меня кривая версия библиотеки, ты какую версию использовал ?
    В любом случае спасибо огромное!
     
  11. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Да, дублировать в личку не обязательно. Я и так все прочитаю в треде. Косяки твои я написал. Библиотеки тут вообще не при чем, потому что мое решение - это чистый JS.