如何添加一个类而不让它摆脱其他类?

我在页脚中设置了以下代码,在指定的时间内添加了一类“day”。

function setTimeStyles() { var currentTime = new Date().getHours(); if(currentTime > 5 && currentTime < 17) { document.body.className = 'day'; } } $(document).ready(function() { setTimeStyles(); }); 

问题是当类被添加时,它将摆脱已经存在的其他类。 例如,如果没有添加’day’类,我的body标签将是:

  

但是当添加’day’类时,我的body标签会变成:

  

我希望它能让’day’类添加到已经存在的内容中:

  

我该怎么做呢?

在jQuery中你可以做到

 $("body").addClass("day"); 

你有没有尝试过更换

 document.body.className = 'day'; 

 document.body.className = document.body.className + ' day'; 

我不知道jquery如何添加一个类,但你可能想确保它被添加(或移动)到任何现有列表的末尾 ,在任何冲突中都优先。

 function addClass(node, cname){ var C= node.className.split(/\s+/), L= C.length; while(L){ if(C[--L]=== cname) delete C[L]; } C.push(cname); node.className= C.join(' ').replace(/ {2,}/g,' '); }