Путаница с функцией Animate в jQuery - PullRequest
0 голосов
/ 18 октября 2011

Предположим, у меня на странице есть поле:

   <div id="test" style="width:200px; height:200px; background:yellow">
        this is a test
    </div>

Я просто включаю "jquery-1.6.2.min.js" на своей странице

, затем я хочу изменить шрифтразмер, поэтому я использую

$('#test').animate({ fontSize: "10em"}, "slow");

, затем я хочу изменить background-color в окне "test", которое я пишу:

$('#test').animate({ 'background-color': '#000000' }, "slow");

, но пока я не включу "jquery-ui-1.8.5.custom.min.js "это не работает.

Я думаю, что оригинальный файл" jquery-1.6.2.min.js "уже включает в себя все функции анимации, размер шрифта и цвет фонаатрибуты css, но оригинал может поддерживать только изменение размера шрифта?Почему?

Мой вопрос в том, что я думаю, что пакет "jquery-ui-1.8.5.custom.min.js" просто используется для пользовательского интерфейса или некоторых других вещей.Оба для изменения атрибута CSS.

Ответы [ 2 ]

2 голосов
/ 18 октября 2011

Прочитайте документы jQuery для .animate:

Все анимированные свойства должны быть анимированы в одно числовое значение, за исключением случаев, указанных ниже; большинство нечисловых свойств не может быть анимированные с использованием основных функций jQuery. (Например, ширина, Высота или слева могут быть анимированы, но цвет фона не может быть.)

Значения свойства рассматриваются как количество пикселей, если не указано иное. указано. Единицы измерения em и% могут быть указаны, где это применимо.

Если вы хотите анимировать свойства, такие как background-color, вам придется использовать jQuery UI (или какой-либо другой плагин), как вы уже заметили. Обратите внимание, что сайт пользовательского интерфейса jQuery предоставляет настраиваемую функцию загрузки, поэтому, если вы не хотите включать все виджеты, вы можете выбрать только базовую библиотеку.

0 голосов
/ 18 октября 2011

jQuery изначально не поддерживает анимацию цветов.jQuery UI делает.Раньше был отдельный плагин цвета, но теперь он, похоже, был поглощен пользовательским интерфейсом.

Редактировать: Вот оригинальный плагин, но вы можете заставить его работать без интерфейса: http://plugins.jquery.com/files/jquery.color.js.txt

...