2013-04-23 3 views
0

Я использую jQuery, чтобы установить фоновое изображение для растягивания внутри div с помощью $("#container").css("background-size", "100% 100%").Удалить размер фона CSS3 с помощью jQuery

Он отлично работает, но затем одним нажатием кнопки. Я хочу удалить свойство и сбросить размер фона до его состояния по умолчанию, поэтому я использую $("#container").removeAttr("background-size");, и он не работает ... ничего не меняется.

Любая помощь будет оценена по достоинству.

+0

'.removeAttr()', как следует из его названия, относится к атрибутам HTML DOM, а не к свойствам CSS. – BoltClock

ответ

4

Попробуйте это. removeAttr удаляет атрибут элемента не css.

$("#container").css('background-size', '') 
+1

Да, это работает, спасибо за быстрый ответ. – Light

+0

Рад, что это помогло. – PSL

0

removeAttr() для удаления HTML-атрибутов, а не CSS стилей.

Вы можете использовать один и тот же сценарий jQuery, который вы используете, чтобы установить размер фона в auto.

$("#container").css("background-size", "auto")

0

Вы можете сделать класс вместо встроенного стиля:

.background-size { background-size:'100% 100%' } 

В этот:

$("#container").addClass("background-size"); 

И тогда, когда вы хотите, чтобы удалить его:

$("#container").removeClass("background-size"); 
4

.removeAttr(attributeName) просто удаляет атрибут из каждого элемента в наборе согласованных элементов. Итак, вы должны сбросить свой CSS на .css('background-size', '')