怎么設(shè)置多次點(diǎn)擊按鈕,樣式可以來(lái)回切換,同時(shí)document.write描述樣式的文字也能變化?我這個(gè)代碼哪里有問(wèn)題?
<!doctype?html> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;charset=utf-8"> <title>654613</title> <style?type="text/css"> .one{ ????color:red; ????background-color:green; ????font-size:20px; ????width=300px; ????height=100px; ??????} .two{ ????color:blue; ????background-color:pink; ????font-size:50px; ????width=500px; ????height=150px; ??????} </style> <body> ????<div?id="div1"?style="text-align:center;"> ????<p>樣式可以轉(zhuǎn)換,快來(lái)試試</p><br?/> ????<input?name="button"?type="button"?onclick="typeform()"?value="點(diǎn)我轉(zhuǎn)換"?/> ????</div> ???? ????<script> ????????var?mm=document.getElementById("div1"); ????????mm.className="one" ????????document.write("現(xiàn)在的樣式ID是:"+mm.className) ????function?typeform() ????{ ????????if(mm.className="one") ????????{ ????????????mm.className="two" ????????} ????????else ????????{ ????????????mm.className="one" ????????} ????} ????</script> </body> </html>
只能點(diǎn)一次,再點(diǎn)就沒(méi)反應(yīng)了。當(dāng)我的div樣式是two時(shí),應(yīng)該觸發(fā)else了呀?同時(shí)document.write的文字也不能改變(一直是one),難道不應(yīng)該隨著className變化嗎。
2018-07-26
if 括號(hào)里邊應(yīng)該用比較運(yùn)算符==? 你用的是賦值運(yùn)算符? mm.className永遠(yuǎn)都是one
至于為當(dāng)前樣式是one? 是因?yàn)楹瘮?shù)中沒(méi)有返回值(怎么設(shè)置暫時(shí)還沒(méi)學(xué)到)
2018-08-28
?function typeform()
? ? {
? ? ? ? if(mm.className!="one")
? ? ? ? {
? ? ? ? ? ? mm.className="one"
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? mm.className="two"
? ? ? ? }
? ? }
改成這樣
2018-08-13
使用三目運(yùn)算符? ?:
含義:如果p2當(dāng)前的類(lèi)名=’two',那么就設(shè)置為‘one’,如果不是等于‘two',就設(shè)置為’two'
function modify(){
? ? ? var p2 = document.getElementById("p2");
? ? ? p2.className=p2.className==='two'?'one':'two';
? ?}
2018-08-06
因?yàn)檩敵鰳邮侥菞l語(yǔ)句只在頁(yè)面加載時(shí)執(zhí)行了一次,鼠標(biāo)點(diǎn)擊改變樣式后,并沒(méi)有輸出樣式,具體看你代碼里的函數(shù)。