亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請教大神這樣為什么輸出不了重置?

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" Content="text/html; charset=utf-8" />

<title>javascript</title>

<style type="text/css">

body{font-size:12px;}

#txt{

? ? height:400px;

? ? width:600px;

border:#333 solid 1px;

padding:5px;}

? ? .n{

? ? height:400px;

? ? width:600px;

? ? border:#333 solid 1px;

padding:5px;}

? ??

p{

line-height:18px;

text-indent:2em;}

</style>

</head>

<body>

? <h2 id="con">JavaScript課程</H2>

? <div id="txt">?

? ? ?<h5>JavaScript為網頁添加動態效果并實現與用戶交互的功能。</h5>

? ? ? ? <p>1. JavaScript入門篇,讓不懂JS的你,快速了解JS。</p>

? ? ? ? <p>2. JavaScript進階篇,讓你掌握JS的基礎語法、函數、數組、事件、內置對象、BOM瀏覽器、DOM操作。</p>

? ? ? ? <p>3. 學完以上兩門基礎課后,在深入學習JavaScript的變量作用域、事件、對象、運動、cookie、正則表達式、ajax等課程。</p>

? </div>

? <form>

? <!--當點擊相應按鈕,執行相應操作,為按鈕添加相應事件-->

? ? <input type="button" onClick="b()"value="改變顏色" > ?

? ? <input type="button" onClick="c()"value="改變寬高" >

? ? <input type="button" onClick="d()"value="隱藏內容" >

? ? <input type="button" onClick="e()"value="顯示內容" >

? ? <input type="button"onClick="f()" value="取消設置" >

? </form>

? <script type="text/javascript">

? ?var a=document.getElementById("txt");


//定義"改變顏色"的函數

function b(){

? a.style.color="red";

? a.style.backgroundColor="#ccc";?

}


//定義"改變寬高"的函數

function c(){

? a.style.width="20px";

? a.style.height="30px";?

}


//定義"隱藏內容"的函數

function d(){

a.style.display="none";

}


//定義"顯示內容"的函數

function e(){

a.style.display="block";

}


//定義"取消設置"的函數

function f(){

? ? var a=confirm("是否取消設置")

if(a==true){?

? ? var p1 = document.getElementById("txt");

p1.className="n"}}

? </script>

</body>

</html>


正在回答

5 回答

這些樣式在點擊過相應的按鈕后,會逐一添加到屬性style中,到最后style的屬性有顏色,寬高,顯示樣式,結果就是?<div?id="txt"?style="color: red; background-color: rgb(204, 204, 204); width: 20px; height: 30px; display: block;" >

你最后的按鈕會在?<div id="txt">中添加一個class屬性,結果就是?<div?id="txt"?style="color: red; background-color: rgb(204, 204, 204); width: 20px; height: 30px; display: block;"?class="n">

現在就涉及到選擇器的優先級問題了,行內樣式>id>class,現在明白了嗎,你可以用firebug調試一下,看看你想象的樣式和實際的樣式差在哪里,導致差異的原由慢慢你就會找到的。


0 回復 有任何疑惑可以回復我~
#1

三水朝山 提問者

可以用最高級調用,謝謝了。明白了選擇器優先級忘記
2016-05-19 回復 有任何疑惑可以回復我~
?.n{
????height:400px;
????width:600px;
????border:#333?solid?1px;
padding:5px;
}/*沒有重置到原來的原因應該時文字還是紅色、有背景色,主要是因為這里的style設置沒有復制全部的。
你可以在這個后面加上"color:blue";看下效果就知道樂-?-。*/


0 回復 有任何疑惑可以回復我~
#1

三水朝山 提問者

加了還是沒變.....
2016-05-19 回復 有任何疑惑可以回復我~
#2

吾王最愛的加菲貓 回復 三水朝山 提問者

我又試了試,確實不能回復改變,原因應該和上面說的一樣,.class的優先級小于#id
2016-05-19 回復 有任何疑惑可以回復我~
#3

三水朝山 提問者 回復 吾王最愛的加菲貓

我加了!important最優先級也沒用
2016-05-19 回復 有任何疑惑可以回復我~

方法的思路是可以用的,稍等我給你貼個代碼,主要原因是因為你樣式改變的對象不對


0 回復 有任何疑惑可以回復我~
#1

三水朝山 提問者

好的謝謝
2016-05-19 回復 有任何疑惑可以回復我~
//定義"取消設置"的函數
function?cancelChange(){
????var?message?=?confirm("是否取消設置?");
????if(message?==?true)?document.getElementById("txt").style?=?"#txt";
}

把style重新改回css里寫好的#txt就行了

0 回復 有任何疑惑可以回復我~
#1

三水朝山 提問者

后面.style = "#txt"沒學過不懂意思
2016-05-19 回復 有任何疑惑可以回復我~

已經用Object.style.xxx="yyy";的語句將屬性值改了,獲取的是改變后的值。沒意義么!

0 回復 有任何疑惑可以回復我~
#1

三水朝山 提問者

是后面的重置,把之前的屬性復制一遍,然后借類的方式,讓取消設置按鍵調用復制過的類,不行嗎?
2016-05-19 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請教大神這樣為什么輸出不了重置?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號