<!doctype html> <html> <head> <meta charset="utf-8"> <title>無標(biāo)題文檔</title> </head> <style> #div1{color:red; font-size:30px;} .active{ background:black;} </style> <body> <div id="div1" class="actived" onClick="highlight(this)">123456789</div> <script type="text/javascript"> function highlight(e){ var str=e.className; var re=/active/; if(re.test(str)==true){ e.className=str; }else{ e.className+=" active"; } } </script> </body> </html>
這是一個點擊添加class改變樣式的函數(shù),當(dāng)被點擊的標(biāo)簽為空時會添加active,而當(dāng)它已經(jīng)含有時就不需要繼續(xù)添加,現(xiàn)在是當(dāng)它class為actived時也被認(rèn)為是有active,這個問題該怎么解決?
擁有18年軟件開發(fā)和IT教學(xué)經(jīng)驗。曾任多家上市公司技術(shù)總監(jiān)、架構(gòu)師、項目經(jīng)理、高級軟件工程師等職務(wù)。 網(wǎng)絡(luò)人氣名人講師,...
/^active$/ 只匹配active
但是你為什么不適用classList呢?自帶has,add,remove,contain方法
你這個元素的class如果寫的比較規(guī)范的話,那么active后面跟的應(yīng)該是行尾,你把re改一下,
re?=?/active$/