Jump to content
  • 0

Добавить класс по клику на select, удалить этот класс по клику на option


Torawhite
 Share

Question

Добавить класс проблем нет по клику, но вот убрать по клику на option этого же select не выходит. Ведь получается, что и по селекту я кликаю тоже.

$('.select option').click(function(){$(this).parents('.select_box').removeClass('open_select');});$('.select').click(function(){$(this).parents('.select_box').addClass('open_select');});

Есть какие-то хитрости?

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Спасибо! Скорее, я не совсем правильно применил, но он меняет класс в момент изменения формы. Сделал так

$('.select').change(function(){$(this).parents('.select_box').toggleClass('open_select');});

Только нужно добавить класс при раскрытии списка , суть простая - пенять направление стрелки бэкграунда вверх-вниз. При раскрытии - вверх, при закрытии - вниз.

Если сделать так

$('.select').click(function(){$(this).parents('.select_box').addClass('open_select');});$('.select').change(function(){$(this).parents('.select_box').toggleClass('open_select');});

То при выборе пункта из списка класс так и остаётся.

Edited by Torawhite
Link to comment
Share on other sites

  • 0

Спасибо! Я так понял, скрипт полностью переписывает структуру select, поэтому там и работает toggleClass(). Вариантов с сохранением искомой структуры, так понимаю, нет :unsure:

Link to comment
Share on other sites

  • 0

 

Спасибо! Я так понял, скрипт полностью переписывает структуру select, поэтому там и работает toggleClass(). Вариантов с сохранением искомой структуры, так понимаю, нет :unsure:

 

форкнул http://jsfiddle.net/kfytzbhu/

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Обсуждения

    • Например, добавить  .wrapper li {     clear: both; } http://jsfiddle.net/e3f9ozLr/
    • Ты в стрелочной функции из-за того что у тебя одно выражение опустил { }. А это ведет к неявному возврату результата выражения.
    • Здравстуйте, каким образом можно получить доступ к Mathcad Application Server для получения доступа к документам и функциям Mathcad через Интернет. Может быть, есть другой способ связать интернет с Mathcad ?
    • Прошу помочь с заданием: Написать файл скрипта, который генерирует три числа, соответствующие значениям высоты, длины и ширины комнаты. Отобразить в консоли: a.Площадь стен комнаты b.Объём комнаты c.*Объём комнаты за вычетом случайно сгенерированного количества чисел, которые определяет объёмы случайно зашедших в комнату людей. (в итоге запустит скрипт последством консоли) (заранее огромное спасибо)
    • Попробуйте поиграться в этом направлении: Но то что касается применения фильтров с изменением визуального отображения конечного изображения — то повторить его 1:1, скорей всего, не выйдет. Для этого используются изображения с применённым фильтром отдельным файлом
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy