Skip to content

Instantly share code, notes, and snippets.

@SergSlon
Created September 4, 2013 10:44
Show Gist options
  • Select an option

  • Save SergSlon/6435417 to your computer and use it in GitHub Desktop.

Select an option

Save SergSlon/6435417 to your computer and use it in GitHub Desktop.
var prevWidth = element.style.width
element.style.width = 'auto'
var endWidth = getComputedStyle(element).width
element.style.width = prevWidth
element.offsetWidth // force repaint
element.style.transition = 'width .5s ease-in-out'
element.style.width = endWidth
element.addEventListener('transitionend', function transitionEnd(event) {
if (event.propertyName == 'width') {
element.style.transition = ''
element.style.width = 'auto'
element.removeEventListener('transitionend', transitionEnd, false)
}
}, false)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment