Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 切换代码在IE11中不起作用_Javascript_Html_Css - Fatal编程技术网

Javascript 切换代码在IE11中不起作用

Javascript 切换代码在IE11中不起作用,javascript,html,css,Javascript,Html,Css,下面是我为一个名为Toggle的类编写的代码,该类用于切换我的站点中的多个组件。HTML上有一个名为data expand content的数据属性,css设置为当data expand content为true时,显示:block或该内容的任何内容。JS是在单击时切换数据属性的工具。它在除IE11之外的所有浏览器上都能正常工作,请帮我找出问题所在 谢谢 这是JS class Toggle { constructor(control, el) { const toggle

下面是我为一个名为Toggle的类编写的代码,该类用于切换我的站点中的多个组件。HTML上有一个名为data expand content的数据属性,css设置为当data expand content为true时,显示:block或该内容的任何内容。JS是在单击时切换数据属性的工具。它在除IE11之外的所有浏览器上都能正常工作,请帮我找出问题所在

谢谢

这是JS

class Toggle {
    constructor(control, el) {
        const toggleLink = document.querySelector('.primary-nav__toggle-link');
        control = document.querySelector(control);
        el = document.querySelector(el);
        if(el) {
            control.addEventListener('click', function(e) {
                if(el.dataset.expandContent == "false") {
                    el.dataset.expandContent = "true"
                    if(e.target == document.querySelector('.primary-nav__toggle-icon')) {
                        document.querySelector('.primary-nav__toggle-icon').setAttribute('src', '../assets/close-menu.svg');
                    }
                } else {
                    el.dataset.expandContent = "false";
                    if(e.target == document.querySelector('.primary-nav__toggle-icon')) {
                        document.querySelector('.primary-nav__toggle-icon').setAttribute('src', '../assets/burger-menu.svg');
                    }
                }
            })
        }   
    }
}

// new instances of class that get passed a control and a the element that gets toggled
const menu = new Toggle('.primary-nav__toggle-link', '#primary-nav');
const bannerEl = new Toggle('.banner', '.banner');

这个问题与反应有什么关系?您是按原样使用代码,还是先将代码传输到ES5?哇!不应该在那里添加react,我在同一个项目中使用react,但它与这个问题无关。是的,我用的是巴别塔。