javascript隨機點名--案例


主要知識點涉及if選擇結構判斷語句數組的定義定時器清除定時器日期對象的使用

1.HTML結構

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <meta charset="utf-8">
 5     <title>隨機點名</title>
 6     <style type="text/css">
 7         .box{
 8             width: 200px;
 9             height: 200px;
10             border: 1px solid red;
11         }
12         #uname{
13             width: 100px;
14             height: 50px;
15             background: pink;
16 
17             /* 設置div塊 水平居中*/
18             margin: 0 auto;
19             margin-top: 30px;
20             
21 
22             text-align: center;  /* 設置文本水平居中 */
23             line-height: 50px;  /* 設置文本垂直居中 */
24             font-weight: bold;  /* 字體加粗 */
25             font-size: 20px;  /* 設置字體大小 */
26         }
27         button{
28             display: block; /* 將元素轉換成行內塊元素 */
29             margin: 10px auto;
30         }
31     </style>
32 </head>
33 <body>
34 
35 <div class="box">
36     <div id="uname">姓名</div>
37     <button>開始</button>
38 </div>
39 
40 </body>
41 </html>

頁面如下圖所示:

 

 

 2.js代碼

1)在開始按鈕和結束按鈕之間相互轉換

點擊  開始  按鈕,將按鈕中的內容修改為  結束 

 1 <body>
 2 <script type="text/javascript">
 3     // 獲取按鈕對象
 4     var btn = document.getElementsByTagName("button")[0];
 5     // 給按鈕添加單擊事件
 6     btn.onclick = function(){
 7         btn.innerHTML="結束"
 8     };
 9 </script>
10 </body>

 

 

點擊結束按鈕 ,按鈕變成開始按鈕

切換按鈕:判斷按鈕狀態,如果按鈕為開始按鈕,將按鈕變成結束按鈕;

如果按鈕為結束按鈕,將按鈕變成開始按鈕。

 1 <body>
 2 
 3 <script type="text/javascript">
 4     // 獲取按鈕對象
 5     var btn = document.getElementsByTagName("button")[0];
 6     // 給按鈕添加單擊事件
 7     btn.onclick = function(){
 8         if(btn.innerText=="開始"){
 9             btn.innerHTML="結束"
10         }else{
11             btn.innerHTML="開始"
12         }
13         
14     };
15 </script>
16 </body>

定義一個數組用來存儲人名,點擊開始按鈕,隨機選擇人名

點擊停止按鈕,頁面不再發生變化。

 1 <body>
 2 
 3 <div class="box">
 4     <div id="uname">姓名</div>
 5     <button>開始</button>
 6 </div>
 7 <script type="text/javascript">
 8     // 定義數組  存儲人名
 9     var arr = ['李白','杜甫','韓愈','柳宗元','歐陽修','蘇洵','蘇軾','蘇轍','王安石','曾鞏','陶淵明','辛棄疾','李賀','陸游'];
10     // 獲取id="uname"的元素對象
11     var Uname = document.getElementById("uname");
12     var flag = null; // 給定時器添加一個標識符
13 
14     // 獲取按鈕對象
15     var btn = document.getElementsByTagName("button")[0];
16     // 給按鈕添加單擊事件
17     btn.onclick = function(){
18         if(btn.innerText=="開始"){
19             btn.innerHTML="結束";
20             // 添加多次定時器
21             flag = setInterval(function(){
22             var num = rand(0,arr.length-1); //隨機獲取數組的索引
23             // 通過索引獲取人名
24             var uname = arr[num];
25             // 將取出來的人名  寫入到頁面當中
26             Uname.innerHTML=uname;
27             },100)
28             
29         }else{
30             btn.innerHTML="開始";
31             // 清除多次定時器
32             clearInterval(flag);
33         }
34         
35     };
36 
37 
38     // 封裝一個隨機函數
39     function rand(n,m){
40         return Math.floor(Math.random()*(m-n+1));
41     }
42 </script>
43 </body>

頁面最終顯示如下圖所示:

 

3.innerText( )和innerHTML( )之間的區別

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <meta charset="utf-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8 
 9 <p>余生<em>山海</em>遠闊,願你隨心所向。</p>
10 <script type="text/javascript">
11     // 獲取元素對象
12     var cont = document.getElementsByTagName("p")[0];
13     // 獲取元素內容
14     console.log(cont.innerText);
15     console.log(cont.innerHTML);
16 </script>
17 </body>
18 </html>

 

 

-------------------------------------------------------------------------------------------

 innerText、innerHTML 向指定元素添加內容

innerHTML :設置元素內容,包括標簽和文本   一般用於修改元素對象,獲取文本內容和標簽

innerText:設置元素文本,只能設置文本  一般用於獲取元素對象,只能獲取到文本內容,


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM