Javascript 是<;dt>;标签贬值,CSS手风琴不工作?
我有一个手风琴,我用一些JS来触发打开和关闭。它在my中运行良好,但在站点上它不会打开。而且它不会抛出任何错误 你知道这是什么原因吗?Google Chrome的Javascript 是<;dt>;标签贬值,CSS手风琴不工作?,javascript,html,css,Javascript,Html,Css,我有一个手风琴,我用一些JS来触发打开和关闭。它在my中运行良好,但在站点上它不会打开。而且它不会抛出任何错误 你知道这是什么原因吗?Google Chrome的标签是否贬值 Javascript: (function(){ var d = document, accordionToggles = d.querySelectorAll('.js-accordionTrigger'), setAria, setAccordionAria, switchAcc
标签是否贬值
Javascript:
(function(){
var d = document,
accordionToggles = d.querySelectorAll('.js-accordionTrigger'),
setAria,
setAccordionAria,
switchAccordion,
touchSupported = ('ontouchstart' in window),
pointerSupported = ('pointerdown' in window);
skipClickDelay = function(e){
e.preventDefault();
e.target.click();
}
setAriaAttr = function(el, ariaType, newProperty){
el.setAttribute(ariaType, newProperty);
};
setAccordionAria = function(el1, el2, expanded){
switch(expanded) {
case "true":
setAriaAttr(el1, 'aria-expanded', 'true');
setAriaAttr(el2, 'aria-hidden', 'false');
break;
case "false":
setAriaAttr(el1, 'aria-expanded', 'false');
setAriaAttr(el2, 'aria-hidden', 'true');
break;
default:
break;
}
};
//function
switchAccordion = function(e) {
e.preventDefault();
var thisAnswer = e.target.parentNode.nextElementSibling;
var thisQuestion = e.target;
if(thisAnswer.classList.contains('is-collapsed')) {
setAccordionAria(thisQuestion, thisAnswer, 'true');
} else {
setAccordionAria(thisQuestion, thisAnswer, 'false');
}
thisQuestion.classList.toggle('is-collapsed');
thisQuestion.classList.toggle('is-expanded');
thisAnswer.classList.toggle('is-collapsed');
thisAnswer.classList.toggle('is-expanded');
thisAnswer.classList.toggle('animateIn');
};
for (var i=0,len=accordionToggles.length; i<len; i++) {
if(touchSupported) {
accordionToggles[i].addEventListener('touchstart', skipClickDelay, false);
}
if(pointerSupported){
accordionToggles[i].addEventListener('pointerdown', skipClickDelay, false);
}
accordionToggles[i].addEventListener('click', switchAccordion, false);
}
})();
(函数(){
var d=文件,
accordionToggles=d.querySelectorAll('.js accordionTrigger'),
狗尾草,
Set手风琴,
手风琴,
touchSupported=(窗口中的“ontouchstart”),
pointerSupported=(“pointerdown”在窗口中);
skipClickDelay=功能(e){
e、 预防默认值();
e、 target.click();
}
setAriaAttr=函数(el、ariaType、newProperty){
el.setAttribute(ariaType,newProperty);
};
SetAccordinaria=函数(el1、el2、扩展){
交换机(扩展){
案例“真”:
setAriaAttr(el1,'aria expanded','true');
setAriaAttr(el2,'aria hidden','false');
打破
案例“假”:
setAriaAttr(el1,'aria expanded','false');
setAriaAttr(el2,'aria hidden','true');
打破
违约:
打破
}
};
//作用
开关手风琴=功能(e){
e、 预防默认值();
var thisAnswer=e.target.parentNode.nextElementSibling;
var thisQuestion=e.target;
if(thisAnswer.classList.contains('is-collapsed')){
SetAccordinaria(这个问题,这个答案,'正确');
}否则{
SetAccordinaria(这个问题,这个答案,'假');
}
thisQuestion.classList.toggle('is-collapsed');
thisQuestion.classList.toggle('is-expanded');
thisAnswer.classList.toggle('is-collapsed');
thisAnswer.classList.toggle('is-expanded');
thisAnswer.classList.toggle('animateIn');
};
对于(var i=0,len=accordiontogles.length;i通过验证器登录您的live站点,修复它报告的所有错误,然后看看会发生什么。
和
没有被弃用,但它们应该只在
@Blazemonger内部使用,它们在
内部,所以这至少是好的。尝试一些方法来获得它阅读此JS。它似乎不想切换已展开
/已折叠
类。解决了这个问题,框架不喜欢解析JS,更喜欢阅读jQuery。在jQuery中重写它,它似乎可以修复它。请关闭“太宽”。通过验证器运行您的live站点并修复它报告的所有错误,然后查看发生了什么。
和
没有被弃用,没有,但它们应该只在
@Blazemonger中使用。它们在
中,所以这至少很好。尝试一些方法让它阅读此JS。看起来好像没有“我不想切换已展开的
/已折叠的
类。解决了这个问题,框架不喜欢解析JS,更喜欢阅读jQuery。在jQuery中重写它,它似乎可以修复它。请关闭“太宽”。