IE 11 addClass + removeClass
我无法在Internet Explorer 11上使用此代码。我知道此段导致了问题。 如果我上传我的文件激活此代码,IE 11将我网站的整个部分完全空白。 没有它,它将在我的网站上显示信息,但它显然不起作用。
我已经在http://caniuse.com/上查找了各种function,根据它,只有部分支持removeClass和addClass,这可能是问题所在。 是否有某种插件或不同的命令使其与IE 11兼容?
$(window).on('hashchange', function () { var ImageContainer = $('.tabs > div'), hash = window.location.hash !== '' ? window.location.hash: '#about'; console.log(hash); ImageContainer.hide(); ImageContainer.filter(hash).show(); $('').removeClass('selected'); $('a[href="' + hash + '"]', '.ImageContainer').addClass('selected'); }).trigger('hashchange');
编辑 – 标记
Headline
Body Text
Different Headline
Different Body Copy
问题在于IE如何处理哈希。 它不像其他浏览器那样默认为空字符串,默认为’#’。 而不是设置哈希,你应该在IE中设置可靠性的位置。
hash = window.location.hash !== '' ? window.location.hash: '#about';
变
hash = window.location.hash; if (hash !== '' || hash !== '#') { hash = '#about'; window.location = hash; }
标记未呈现,因为它没有重置条目上的哈希并给出错误消息“#”不是filter的有效选择器。