Bug Tracker

Modify

Ticket #7448 (closed bug: invalid)

Opened 3 years ago

Last modified 2 years ago

'animate' doesn't work for 'background-position' property in IE6-7

Reported by: private.face@… Owned by:
Priority: undecided Milestone: 1.5
Component: unfiled Version: 1.4.3
Keywords: Cc:
Blocking: Blocked by:

Description

Since I switched to jquery-1.4.3 the following code stopped working in IE6-7:

   $('#a').animate({
       'background-position' : '200px 0'
   });

Now it causes the following error:

Invalid argument. jquery.js line 6573 character 5:
    fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;

At the same time, animation for properties 'background-position-x' and 'background-position-y' seems to be working fine.

Change History

comment:1 Changed 3 years ago by jitter

The documentation for  animate states

Shorthand CSS properties (e.g. margin, background, border) are not supported.

Shorthand properties don't work equally across all browsers. For animating background-position in a cross browser way consider using the bgpos-cssHook from  jquery-cssHooks

Version 0, edited 3 years ago by jitter (next)

comment:2 Changed 3 years ago by private.face@…

I'm not sure that 'background-position' is a shorthand property, but I found another condition that I missed:

All animated properties should be a single numeric value

comment:3 Changed 3 years ago by snover

  • Status changed from new to closed
  • Resolution set to invalid

Thanks for the report, but this is not a jQuery bug. If you want to animate background position, you need to install a  plugin that adds support for it.

Please follow the  bug reporting guidlines and use  jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

View

Add a comment

Modify Ticket

Action
as closed
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.