Search code examples
javascriptjqueryinternet-explorerinternet-explorer-11slidetoggle

Var with {} break IE 11


Im having an issue using slideToggle as a variable on my website. Im using domSlider. When I try the following I get issues I cannot understand.

If define slideToggle as:

var {slideToggle} = window.domSlider;

I get SCRIPT1010: Expected identifier in IE 11. But works in Chrome and modern browsers.

And if I define it as:

var slideToggle = window.domSlider;

I get Uncaught TypeError: slideToggle is not a function In chrome and other modern browsers. But no errors in IE 11.

I dont know what is causing this, and how to move on from here.


Solution

  • IE11 doesn't support destructuring assignment: Browser_compatibility

    var { slideToggle } = window.domSlider;
    

    would be:

    var slideToggle = window.domSlider.slideToggle;
    

    to work in IE11, or you can just use window.domSlider.slideToggle directly