JQuery的幾個簡單小案例(基礎)

JQuery的幾個簡單小案例

  • 實現表格的的隔行換色
  • 實現複選框的全選與全不選
  • QQ表情的選擇
  • 多選下拉列表的左右移動

實現表格的的隔行換色

需求:事先製作一個如圖所示的table表格,將數據行的奇數行背景色設置爲 pink,偶數行背景色設置爲 yellow

  • 分析
    用過濾選擇器獲取數據行tr標籤,選擇奇偶數行,分別設置背景

預先編寫的表格
預先編寫的表格

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<script  src="../../js/jquery-3.3.1.min.js"></script>
    		
    		<script>
    			//需求:將數據行的奇數行背景色設置爲 pink,偶數行背景色設置爲 yellow
    
    			// 入口函數
    			$(function () {
    				// 分析
    				// 用過濾選擇器獲取數據行tr標籤,選擇奇數行,設置背景色爲pink
    				$("tr:gt(1):odd").css("background","pink");
    				// 獲取數據行tr標籤,選擇偶數行,設置背景色爲yellow
    				$("tr:gt(1):even").css("background","yellow");
    			});
    		</script>
    	</head>
    	<body>
    		<table id="tab1" border="1" width="800" align="center" >
    			<tr>
    				<td colspan="5"><input type="button" value="刪除"></td>
    			</tr>
    			<tr style="background-color: #999999;">
    				<th><input type="checkbox"></th>
    				<th>分類ID</th>
    				<th>分類名稱</th>
    				<th>分類描述</th>
    				<th>操作</th>
    			</tr>
    			<tr>
    				<td><input type="checkbox"></td>
    				<td>1</td>
    				<td>手機數碼</td>
    				<td>手機數碼類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox"></td>
    				<td>2</td>
    				<td>電腦辦公</td>
    				<td>電腦辦公類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox"></td>
    				<td>3</td>
    				<td>鞋靴箱包</td>
    				<td>鞋靴箱包類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox"></td>
    				<td>4</td>
    				<td>家居飾品</td>
    				<td>家居飾品類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    		</table>
    	</body>
    </html>

實現隔行換色的表格
實現隔行換色的表格

實現複選框的全選與全不選

需求:對上述編寫之前的表格進行處理,使點擊表格最上面的複選框,完成全選與全不選功能

  • 分析
    • 已經設置了首行復選框,爲其添加了點擊事件,
    • 要設置下面的複選框狀態與第一行的複選框狀態一致;可以設置該點擊事件函數,使下面的複選框狀態與此狀態相同
    • 用類選擇器獲取下面的複選框,用prop操作選中屬性值checked
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<script  src="../../js/jquery-3.3.1.min.js"></script>
    		<script>
    			// 需求:點擊上面的複選框,完成全選與全不選功能
    
    			// 分析
    			// 已經設置了首行復選框,爲其添加了點擊事件,
    			// 要設置下面的複選框狀態與第一行的複選框狀態一致;可以設置該點擊事件函數,使下面的複選框狀態與此狀態相同
    			// 用類選擇器獲取下面的複選框,用prop操作選中屬性值checked
    			function selectAll(obj) {
    				$(".itemSelect").prop("checked",obj.checked);
    			}
    		</script>
    	</head>
    	<body>
    		<table id="tab1" border="1" width="800" align="center" >
    			<tr>
    				<td colspan="5"><input type="button" value="刪除"></td>
    			</tr>
    			<tr>
    				<th><input type="checkbox" onclick="selectAll(this)" ></th>
    				<th>分類ID</th>
    				<th>分類名稱</th>
    				<th>分類描述</th>
    				<th>操作</th>
    			</tr>
    			<tr>
    				<td><input type="checkbox" class="itemSelect"></td>
    				<td>1</td>
    				<td>手機數碼</td>
    				<td>手機數碼類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox" class="itemSelect"></td>
    				<td>2</td>
    				<td>電腦辦公</td>
    				<td>電腦辦公類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox" class="itemSelect"></td>
    				<td>3</td>
    				<td>鞋靴箱包</td>
    				<td>鞋靴箱包類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    			<tr>
    				<td><input type="checkbox" class="itemSelect"></td>
    				<td>4</td>
    				<td>家居飾品</td>
    				<td>家居飾品類商品</td>
    				<td><a href="">修改</a>|<a href="">刪除</a></td>
    			</tr>
    		</table>
    	</body>
    </html>

全選複選框實現結果
全選複選框實現結果

QQ表情的選擇

需求:點擊qq表情,將其追加到發言框中

  • 分析
    • 表情位於ul標籤下,是一些img圖片;需要爲這些對象添加點擊事件
    • 可以用層級選擇器獲取表情對象
    • 發言框是一些p標籤,要追加,則可以用CRUD操作中的append方法
    • 追加後原位置也不希望消失,所以需要使用clone方法,但是js與JQuery不能通用,所以需要將js先轉爲JQuery對象才能調用clone方法

預先編寫的qq表情選擇頁面
預先編寫的qq表情選擇頁面

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8" />
        <title>QQ表情選擇</title>
    	 <script  src="../../js/jquery-3.3.1.min.js"></script>
        <style type="text/css">
        *{margin: 0;padding: 0;list-style: none;}
    
        .emoji{margin:50px;}
        ul{overflow: hidden;}
        li{float: left;width: 48px;height: 48px;cursor: pointer;}
        .emoji img{ cursor: pointer; }
        </style>
    	<script>
            //需求:點擊qq表情,將其追加到發言框中
    
            // 分析:表情位於ul標籤下,是一些img圖片;需要爲這些對象添加點擊事件
            // 可以用層級選擇器獲取表情對象
            // 發言框是一些p標籤,要追加,則可以用CRUD操作中的append方法
            // 追加後原位置也不希望消失,所以需要使用clone方法,但是js與JQuery不能通用,所以需要將js先轉爲JQuery對象才能調用clone方法
            
            // 入口函數
            $(function () {
               $("ul img").click(function () {
                   $("p").append($(this).clone());
               });
            });
    		
        </script>
    	
    </head>
    <body>
        <div class="emoji">
            <ul>
                <li><img src="img/01.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/02.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/03.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/04.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/05.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/06.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/07.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/08.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/09.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/10.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/11.gif" height="22" width="22" alt="" /></li>
                <li><img src="img/12.gif" height="22" width="22" alt="" /></li>
            </ul>
            <p class="word">
                <strong>請發言:</strong>
                <img src="img/12.gif" height="22" width="22" alt="" />
            </p>
        </div>
    </body>
    </html>

實現QQ表情選擇的界面
實現QQ表情選擇的界面

多選下拉列表的左右移動

需求:實現下拉列表選擇條目左右選擇功能

  • 分析
    • 分別爲兩個按鈕添加單擊事件
    • –>按鈕中,需要獲取左邊菜單中選中的條目option,追加到右邊select標籤的末尾
    • <–按鈕中,需要獲取右邊菜單中選中的條目option,追加到左邊select標籤的末尾
    • 獲取選中的option;可以使用其固有的selected屬性進行過濾,需使用層級選擇器辨別左右下拉框
    • 使用表單過濾選擇器辨別是否選中該項

預先編寫的兩個下拉列表頁面
預先編寫的兩個下拉列表頁面

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<script  src="../../js/jquery-3.3.1.min.js"></script>
    		<style>
    			#leftName , #btn,#rightName{
    				float: left;
    				width: 100px;
    				height: 300px;
    			}
    			#toRight,#toLeft{
    				margin-top:100px ;
    				margin-left:30px;
    				width: 50px;
    			}
    			.border{
    				height: 500px;
    				padding: 100px;
    			}
    		</style>
    		<script>
    
    			//需求:實現下拉列表選擇條目左右選擇功能
    
    			// 分析:分別爲兩個按鈕添加單擊事件
    			// -->按鈕中,需要獲取左邊菜單中選中的條目option,追加到右邊select標籤的末尾
    			// <--按鈕中,需要獲取右邊菜單中選中的條目option,追加到左邊select標籤的末尾
    			// 獲取選中的option;可以使用其固有的selected屬性進行過濾,需使用層級選擇器辨別左右下拉框
    			// 使用表單過濾選擇器辨別是否選中該項
    
    			// 入口函數
    			$(function () {
    				// -->按鈕的單擊事件
    				$("#toRight").click(function () {
    					// 使用appendTo將左邊菜單中選中的條目option,追加到右邊select標籤的末尾
    					$("#leftName option:selected").appendTo($("#rightName"));
    				});
    				// <--按鈕的單擊事件
    				$("#toLeft").click(function () {
    					// 使用append像左邊select標籤末尾追加右邊菜單中選中的條目option
    					$("#leftName").append($("#rightName option:selected"));
    				});
    			});
    		</script>
    	</head>
    	<body>
    		<div class="border">
    			<select id="leftName" multiple="multiple">
    				<option>張三</option>
    				<option>李四</option>
    				<option>王五</option>
    				<option>趙六</option>
    			</select>
    			<div id="btn">
    				<input type="button" id="toRight" value="-->"><br>
    				<input type="button" id="toLeft" value="<--">
    
    			</div>
    
    			<select id="rightName" multiple="multiple">
    				<option>錢七</option>
    			</select>
    
    		</div>
    	</body>
    </html>

實現左右移動的下拉列表
實現左右移動的下拉列表

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章