как удалить только одно свойство стиля с помощью jquery

125

У меня есть div с этим свойством style="-moz-user-select:none; position:static !important;". Мне нужно удалить -moz-user-select Tried with $ (selector) .css (), но я не знаю, какое значение установить, потому что оно «нет».

Крекер
источник
Если да, то noneзачем его снимать? Если вам нужно изменить его на другое значение, вот список допустимых значений
Чад

Ответы:

243

В документации для css () говорится, что установка свойства style на пустую строку удалит это свойство, если оно не находится в таблице стилей:

Установка значения свойства стиля в пустую строку - например, $('#mydiv').css('color', '')- удаляет это свойство из элемента, если оно уже было напрямую применено, будь то в атрибуте стиля HTML, с помощью .css()метода jQuery или путем прямого управления DOM свойством стиля. Однако он не удаляет стиль, который был применен с помощью правила CSS в таблице стилей или <style>элементе.

Поскольку ваши стили встроены, вы можете написать:

$(selector).css("-moz-user-select", "");
Фредерик Хамиди
источник
21
@KevinFegandocument.getElementById('mydiv').style.removeProperty('-moz-user-select')
xehpuk
-1

Вы также можете заменить «-moz-user-select: none» на «-moz-user-select: inherit». Это унаследует значение стиля от любого родительского стиля или от стиля по умолчанию, если родительский стиль не был определен.

dmorlock
источник
3
наследование не удаление
Евгений Коньков