8000 Tags · xexexesss/GreenSock-JS · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: xexexesss/GreenSock-JS

Tags

1.16.1

Toggle 1.16.1's commit message
1.16.1

- NEW: Draggable allows you to native touch-scroll in the opposite direction as Draggables that are limited to one axis. For example, a Draggable of type:"x" or "left" would permit native touch-scrolling in the vertical direction, and type:"y" or "top" would permit native horizontal touch-scrolling.

- NEW: Draggable now has an onLockAxis callback.

- NEW: Draggable recognizes a new "allowEventDefault" config property. If it's set to true, Draggable won't call preventDefault() on the mouse/touch events so that you can get the native/default behavior if that's what you prefer, or you can manually call it using yourDraggable.pointerEvent.preventDefault().

- IMPROVED: slight performance boost for transforms

- FIXED: clearProps:"transform" (or any transform property) also clears any data-svg-origin attribute.

- FIXED: issue that could cause transforms that are applied along with className in the same tween to not be applied properly.

- FIXED: issue that could cause a ThrowPropsPlugin tween of a DOM element to overwrite other ThrowPropsPlugin tweens of the same element even if they were for different properties (like "x" and "rotation").

- FIXED: issue that could kill active "x" tweens of a Draggable instance when its enable() method is called.

- FIXED: if you called resume() from inside an addPause() callback on a reversed timeline, it didn't resume properly (the callback would keep getting called).

- FIXED: if you resume()/play() a tween that had already completed, it would keep the ticker alive indefinitely.

- FIXED: in rare cases, a callback that was positioned directly on top of an addPause() in a TimelineLite/Max wouldn't be called when the timeline was played in reverse.

- FIXED: regression in 1.16.0 that caused the ticker to rever to using setTimeout() instead of requestAnimationFrame if there were no animations running at roughly 1.5 seconds after the script instantiated.

- FIXED: if you called disable() on a Draggable, it didn't reset the touch-action properly, so it could still interfere with touch device interaction.

- FIXED: when skewType was set to "simple", skewY was still compensated.

- FIXED: issue with jquery.gsap.js plugin that prevented slideUp() and slideDown() from working properly.

1.16.0

Toggle 1.16.0's commit message
1.16.0

- NEW: Draggable has a new "autoScroll" special property that you can set to a number to enable auto-scrolling when the user drags near the edge of a scrollable container. For example, Draggable.create(element, {autoScroll:1}); will auto-scroll at the default speed, whereas autoScroll:2 would scroll twice as fast≤ etc.

- NEW: Draggable has a new getDirection() method that returns "right", "left", "up", "down", "right-up", "right-down", "left-up", or "left-down". It can compare the current position to either where it was when the drag started (the default), or the moment-by-moment velocity direction, or compare it to another element. Example: myDraggable.getDirection(myElement) or myDraggable.getDirection("velocity");

- NEW: Draggable exposes the lockedAxis property so that you can find out whether it's "x" or "y".

- NEW: Draggable recognizes a new "clickableTest" special property which is a function that gets called when the user presses on an element inside a Draggable. That way, you can return true if the element should be considered "clickable" (like a <button> or <a> or <select>) or false if not.

- NEW: CSSPlugin recognizes a new "svgOrigin" special property that allows you to set the transform origin based on absolute SVG coordinate system which can be more convenient than transformOrigin (which is relative to the element's own top left corner). svgOrigin always trumps transformOrigin if both are set. So you can do TweenLite.to(svgElement, 1, {rotation:270, svgOrigin:"250 100"}) if you'd like to rotate svgElement as though its origin is at x:250, y:100 in the SVG canvas's global coordinates. It also records the value in the data-svg-origin attribute so that it can be parsed back that way as well. svgOrigin doesn't accommodate percentage-based values.

- NEW: jquery.gsap.js plugin now allows you to define legacy properties that should pass through GSAP's processing, like $.gsap.legacyProps("translateX,translateY,scaleX,scaleY"); This helps avoid compatibility problems with other jQuery plugins that also customize animation behavior.

- NEW: ColorPropsPlugin recognizes a new "numFormat" Boolean value that you can set like colorProps:{myProperty:"red", numFormat:true} if you want the value to be **set** using a numeric value instead of a string rgb() or rgba() value. For example, it's perfect if you're using a canvas framework that expects a number like 0xFF0000 instead of "rgb(255,0,0)".

- NEW: You can set TweenLite.autoSleep to the number of frames between garbage collection routines (which is also when the ticker goes to sleep if there are no active tweens left). The default is 120.

- IMPROVED: Draggable's support for SVG has never been better. It plots the rotational origin accurately, for example.

- IMPROVED: several performance optimizations were made to Draggable, particularly for transforms and scrolling.

- IMPROVED: force3D:"auto" will no longer try to toggle back to 2D inbetween repeats in a TweenMax instance. This just helps performance.

- IMPROVED: Elastic eases handle "amplitude" config parameters of less than 1 in a more intuitive way, adjusting period to achieve the effect that the user most likely wanted.

- FIXED: className tweens in Chrome no longer leave several -webkit- prefixed properties contaminating the inline styles after the tween finishes (the problem was caused by an inconsistency in the browser itself)

- FIXED: tweens of boxShadow now prioritize "inset" in the end value instead of the beginning value. Previously, if the beginning value contained "inset", it would force it into the end value.

- FIXED: potential rounding error when setting the "snap" of a Draggable to an array of values.

- FIXED: in some rare cases, a Draggable of type:"scrollTop" | "scrollLeft" | "scroll" would have a small margin at the top (like 15px).

- FIXED: animation of transforms of SVG elements in Safari now default to using the "transform" attribute instead of CSS transforms because of bugs in Safari that'd cause them not to be rendered correctly in certain scenarios.

- FIXED: some problems with parsing SVG element transforms (either CSS-based or transform attribute-based).

- FIXED: skewType:"simple" works on elements that only have 2D transforms

- FIXED: zero-duration tweens or callbacks that are positioned at the very beginning of a TimelineLite or TimelineMax will render their starting values after the timeline has been reversed and the playhead goes past the beginning.

- FIXED: callbacks that are positioned exactly at the same spot as an addPause() on a TimelineLite/Max will fire properly now (previously, it could fire before and after the pause/resume and not at all in reverse)

- FIXED: if a timeline is reversed, finishes reversing, and then reverse() is called again, it could end up preventing the timeline from being removed from a parent timeline that has autoRemoveChildren enabled which means it could prevent it from being eligible for GC and consequently not let the main ticker go to sleep in that particular case.

- FIXED: regression in 1.15.x caused addPause() not to always pause when necessary (it could skip on very rare occasions).

- FIXED: if an addPause() was added to the very beginning of a timeline and then reverse() was called, finished, and then later play() was called, the pause would be in effect until you resumed/played again. That's fixed now.

1.15.1

Toggle 1.15.1's commit message
1.15.1

- IMPROVED virtually all of the 3D matrix math in CSSPlugin. Not only should it be slightly faster for rotations, it no longer limits the decimals to 6 digits, meaning if you rotate by tiny amounts over long periods of time, you won't see jumping.

- ADDED removePause() method to TimelineMax for removing a pause at a particular spot using addPause().

- FIXED a regression in 1.15.0 that could cause it to incorrectly parse an element's rotational values that were set via a CSS transform: rotate3d(...). See greensock#73 (comment)

- FIXED TimelineMax.tweenTo() and tweenFromTo() no longer use overwrite:true by default which could cause unintuitive behavior when used to place multiple tweens into a master timeline that were operating on another timeline.

- FIXED broken parsing of numbers that have extra zeros on the end after the decimal, like width:50.50% in CSSPlugin

- FIXED: Now transformOrigin: "center" is allowed (it really should be "center center" according to the css spec, but now it defaults to that). Bug report: greensock#81

- FIXED ScrambleTextPlugin now works with SVG text in IE.

- FIXED CSSRulePlugin doesn't throw an error now if you load style sheets from another domain (it just ignores them when the browser disallows them due to cross-domain security issues).

- FIXED problem caused by some Webkit browser reporting redundant/duplicate transform values (in both "transform" and "WebkitTransform") of the computed style which could cause className tweens to act oddly.

- FIXED parsing of relative rotational values with both postive and negative signs, like "+=-20" which may seem odd to begin with, but it's what happens if you use a variable and compose things dynamically like {rotation: "+=" + myValue} when myValue is negative.

- FIXED worked around a bug in Firefox that caused it to fail the test for CSS transforms applied to SVG, thus previously it would use the "transform" attribute instead of the CSS style. Now the CSS style will be used which permits 3D.

- FIXED natively clickable elements like <a> and <button> elements didn't trigger their default click event action on some native browsers like iOS 8 when a user clicked on a Draggable without moving it.

- ADDED minimumMovement special property to Draggable (set in the config object) that defines the minimum distance that the mouse/touch must move before being interpreted as a drag. Default is 2.

- FIXED issue that caused a Draggable.update() call to fail if the type was "x" or "y".

- UPDATED copyright dates and a few URLs.

1.15.0

Toggle 1.15.0's commit message
1.15.0

- NEW transform-related animations (like rotation, scaleX, scaleY, x, y, z, etc.) will automatically get GPU-accelerated when possible by using 3D transforms which is just like applying the popular "translateZ(0)" hack. This will only be applied in browsers that recognize 3D transforms. This should be most noticable on mobile devices (improved performance).

- NEW CSSPlugin.defaultForce3D property that is "auto" by default, and can be changed to true or false to control the default force3D value for transform-related animations like x, y, z, rotation, scaleX, scaleY, etc.

- NEW DrawSVGPlugin added to membership packages (see http://greensock.com/club/) for animating the stroke on SVG elements.

- IMPROVED performance of transforms

- FIXED issue that caused TweenMax.updateTo() not to re-render immediately even if immediateRender was set to true.

- FIXED issue that caused a pause that was added to a TimelineLite/Max via addPause() to take effect when the playhead was placed directly on top of that spot and then on the next tick left, like tl.addPause(1).play(1);

- FIXED issue that could cause negative relative rotations not to take effect on DOM elements animated with CSSPlugin

- ELIMINATED an innerHTML set in CSSPlugin to better comply with security protocols

- FIXED issue that caused certain rotational transforms that were set outside of GSAP to not be interpreted correctly.

- ADDED ability for CSSPlugin to interpret matrix() values that are set on SVG elements via their "transform" attribute (rather than the CSS style). This can be useful because some graphics programs export their SVG using those values.

- IMPROVED the algorithm that senses if an element is SVG (for transforms) so that it works inside iframes and other sandboxed areas.

- FIXED issue that caused Draggable to throw an error if you defined a GreenSockGlobals object and used ThrowPropsPlugin

- FIXED package.json referred to "repositories" instead of "repository".

1.14.2

Toggle 1.14.2's commit message
1.14.2

- New: onOverwrite callbacks are now called just BEFORE overwriting occurs (instead of after) so that you can optionally return false to cancel that particular overwrite.

- New: added CSSPlugin.useSVGTransformAttr property that allows you to force SVG transforms into the "transform" attribute instead of CSS style, although you'll probably never need to set this manually because the plugin automatically senses when that's necessary. This propery is intended to be a failsafe measure that you could tap into if things aren't behaving as you intended.

- New: instead of removing transform-origin from the inline style of SVG elements, CSSPlugin now sets it to 0px 0px to normalize behavior across browsers and prevent style sheets/rules from interfering.

- New: added Opera support for SVG transforms in CSSPlugin

- Fixed: tiny string-based numbers that are passed in scientific notation (like 1e-8) are correctly recognized now.

- Fixed: the special transform-origin fixes for SVG elements are no longer applied to the wrapper <svg> itself if you choose to animate that.

- Fixed: now when you TweenMax.updateTo() a tween that was set to immediately render and you do so before it starts, it will render the change immediately.

1.14.1

Toggle 1.14.1's commit message
1.14.1 package and bower update

Fixed version numbers in bower.js and package.js

1.14.0

Toggle 1.14.0's commit message
1.14.0

- NEW: apply CSS tranfsorms to SVG elements with consistency, including transformOrigin! The major browsers vary widely in how they support transforms; IE ignores them, requiring that they be applied to the "transform" attribute, Firefox measures transformOrigin differently for px and %, and neither is the same as webkit. GSAP makes them behave in a consistent manner.

- NEW: all tweens/timelines have an endTime() method that returns the time (according to their parent timeline's local time) at which the tween is scheduled to end.

- NEW: TimelineLite/Max have a new recent() method that returns that most recently-added tween (or delayedCall). This can be handy if, for example, you want to define a position according to the previously added tween, like tl.to(..., tl.recent().startTime() + 2) to insert the tween 2 seconds after the previously added one starts.

- NEW: static TweenLite.onOverwrite callback that gets called when any tween gets overwritten.

- NEW: onOverwrite special property that you can define on a per-tween basis. This callback gets called if/when that tween gets overwritten by another tween.

- NEW: if you define a negative stagger value in a staggerTo()/staggerFrom()/staggerFromTo(), it will simply reverse the order in which things are animated. The onCompleteAll is called at the proper time in that case too.

- Fixed: an error could be thrown if a super-short lazy-rendering tween was instantiated from inside an onUpdate of another tween.

- Fixed: a from() tween positioned at the very beginning of a timeline wouldn't be rendered at the pre-tween value when the playhead of the timeline's parent timeline was rewound to a place before that nested timeline's startTime().

- Fixed: error was thrown if you tried creating a Draggable on an element that wasn't in the document/body yet.

- Fixed: Draggable didn't handle position:fixed elements correctly in Firefox in some cases

- Fixed: Draggable didn't permit zIndexBoost for type:"rotation" Draggables

- Fixed: skewY wasn't recorded in _gsTransform

- Fixed: a relative transform that had a suffix (like x:"+=20px") didn't to work properly

- Fixed: if you tried animating a 3D-related transform property, IE9 and earlier didn't render even the 2D portions (this was a recent regression). It now simply ignores the 3D portions when appropriate.

- Fixed: in very rare cases IE8 wouldn't render an opacity tween properly.

- Improved: previously, clearProps required a comma-delimited list of properties with no spaces, but now spaces are allowed.

1.13.2

Toggle 1.13.2's commit message
1.13.2 packaging

- Draggable can now accommodate multiple triggers

- Fixed an issue that caused a Draggable to immediately snap inside of its bounds (when defined) the moment you clicked on it outside the bounds during a throwProps tween (imagine throwing an element outside the bounds, and before it returns, you click on it again - previously it would jump into the bounds but now it stays correctly where you click)

- Fixed warning that may appear in certain browsers like webkit about document.all not existing (it's Microsoft-specific)

- Bounds are applied immediately when a Draggable is created (instead of waiting until the user clicks/touches)

- Added suppressEvents parameter to progress() and totalProgress()

- Fixed regression that prevented CSSPlugin.defaultTransformPerspective from working properly.

- Fixed issue that could cause a seek() of a TimelineLite/Max to stop at an addPause().

- Fixed issue that could cause an invalidate() not to work as expected on a timeline (immediateRender tweens now render immediately after the invalidate())

- invalidate() now returns the virtual playhead to a time of 0.

- Fixed an issue that caused lazy rendering to ignore the suppressEvents parameter, meaning if you seek() a timeline past the point where there is an un-initted tween that has callbacks, those callbacks would get called even though suppressEvents is true for seek() by default.

1.13.1

Toggle 1.13.1's commit message
Update to GSAP 1.13.1

- Reordered the order in which the default selector was determined to more closely match versions prior to 1.13.0. If, for example, "$" referred to jQuery at the time TweenLite/Max loaded and then some other selector engine (like Zepto or Prototype) was loaded that hijacked "$", version 1.13.0 used the latter whereas earlier versions used the former. The goal here is to maximize compatibility with legacy code.

- Fixed minor compatibility problem with jquery.gsap.js plugin

1.13.0

Toggle 1.13.0's commit message
1.13.0

- Added new xPercent and yPercent special properties to CSSPlugin so that you can do percentage-based transforms in addition to px-based ones. Yes, you can combine them like {x:200, xPercent:-50}.

- Added support for document.querySelectorAll() as a fallback when a regular selector engine (like jQuery) isn't present. Previously, getElementById() was used, and it still is when document.querySelectorAll() isn't available.

- Significantly improved compatibility with AMD/RequireJS and CommonJS/Node/Browserify.

- Added "onAutoKill" callback to ScrollToPlugin so that you can have a function called when the user initiates a scroll in the middle of a tween.

- Worked around a very rare rounding issue on certain Microsoft devices that could cause a Draggable not to function properly.

- Fixed issue that could cause values in a timeline to render immediately AFTER its onComplete when a seek() is performed to the very end and the tween hadn't initialized yet (related to the "lazy" feature that defers rendering by default)

- Fixed bug that could cause easeParams not to work properly when the ease is passed as a string instead of a function.

- Fixed bug that could cause zero-duration tweens at the very beginning of a nested timeline not to return to their beginning values if the playhead of the parent timeline goes past the nested timeline's startTime, and then goes back to EXACTLY on top of the startTime, and then before it.

- Improved GC, protecting against a very particular scenario where a user writes bad JS code that maintains a reference to a timeline.
0