event.target【轉載】

[轉載]

1.this和event.target的區別

 js中事件是會冒泡的,所以this是可以變化的,但event.target不會變化,它永遠是直接接受事件的目標DOM元素;

2.this和event.target都是dom對象,如果要使用jquey中的方法可以將他們轉換為jquery對象:$(this)和$(event.target);

比如:event.target和$(event.target)的使用:

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5     <title>event.target</title>
 6     <script type="text/javascript" src="js/jquery.js"></script>
 7     <script type="text/javascript">
 8     $(function(){
 9         $("li").live("click",function(event){
10         $("#temp").html("clicked: " + event.target.nodeName);
11         $(event.target).css("color","#FF3300");
12         })
13     });
14     </script>
15     </head>
16 
17     <body>
18         <div id="temp"></div>
19         <ul class="JQ-content-box" style="padding:20px; background:#FFFFFF">
20             <li>第一行
21                 <ul>
22                     <li>這是公告標題1</li>
23                     <li>這是公告標題2</li>
24                     <li>這是公告標題3</li>
25                     <li>這是公告標題4</li>
26                 </ul>
27             </li>
28         </ul>
29     </body>
30     </html>

上面的例子如果改成使用this:

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5     <title>event.target</title>
 6     <script type="text/javascript" src="js/jquery.js"></script>
 7     <script type="text/javascript">
 8     $(function(){
 9         $("li").live("click",function(event){
10         $("#temp").html("clicked: " + event.target.nodeName);
11         $(this).css("color","#FF3300");
12         event.stopPropagation();
13         })
14     });
15     </script>
16     </head>
17 
18     <body>
19         <div id="temp"></div>
20         <ul class="JQ-content-box" style="padding:20px; background:#FFFFFF">
21             <li>第一行
22                 <ul>
23                     <li>這是公告標題1</li>
24                     <li>這是公告標題2</li>
25                     <li>這是公告標題3</li>
26                     <li>這是公告標題4</li>
27                 </ul>
28             </li>
29         </ul>
30     </body>
31     </html>

注意這里的event.stopPropagation();這個是阻止事件冒泡的!

若不加event.stopPropagation 將會出現下列效果

?

ie下不兼容??? event.target || event.srcElement

案例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<link href="css/admin.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery.js"></script>
<style type="text/css">
body {background:#EBF4F9 url(images/sellcard1_03.jpg) repeat-x;
}
.now>a{ color:#000;}   //ie6不支持子選擇符
</style>
</head>
<body>
<div class="sidesection"><h2 class="sideh2"><a href="#"><img src="images/sellcard1_06.jpg" alt="返回我的工作臺" /></a></h2>
</div>
<div class="sidesection"><h2 class="sideh2"><img src="images/sellcard1_09.jpg" alt="功能權限" /></h2><ul class="sideul"><li class="titleli"><a target="main" href="訂單服務.html">訂單服務</a><ul><li class="titleli"><a target="main" href="處理中訂單.html">處理中訂單</a></li><li class="titleli"><a target="main" href="已完結訂單.html">已完結訂單</a></li></ul></li></ul>
</div>
<script type="text/javascript">
$(function(){$('.titleli').click(function(event){event.stopPropagation();$('.sideul').find('li.now').removeClass('now');$(this).addClass('now');})
})
</script>
</body>
</html>
View Code

//ie6不支持子選擇符

冒泡:點擊 ?“已完結訂單” ?上面的 “訂單服務” ?也會選中,并且變黑

$(this)在冒泡的情況下會發生變化,使用$(event.target)代替$(this) ? 此時單擊已完結訂單項的時候event.target指向的是a。而不是li

?

?

本文轉自《jquery中使用event.target的幾點》

轉載于:https://www.cnblogs.com/positive/p/3445577.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/251551.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/251551.shtml
英文地址,請注明出處:http://en.pswp.cn/news/251551.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

node --- http數據上傳

// 通過報頭的Transfer-Encoding或Content-Length即可判斷請求中是否帶有內容 var hasBody function(req) {return transfer-encoding in req.headers || content-length in req.headers; };// 在HTTP_Parser解析報頭結束后,報文內容部分會通過data事件觸發 function (req, re…

MVC是架構模式,而不是設計模式

最早學編程的時候看過一些書&#xff0c;印象深刻的一本書《設計模式解析》&#xff0c;那本書給我后來的工作提供了很大的幫助。 他叫我站在問題模型的立場上指定解決方法&#xff0c;也教會了我軟件設計中每個問題都可以細化到到不可再分割的原子性。 在那書以后看到過一些設…

msp430入門編程42

msp430中C語言的軟件工程--事件觸發程序結構 轉載于:https://www.cnblogs.com/guochaoxxl/p/7812773.html

使用DataTable作為存儲過程的參數

最近工作中寫了幾個存儲過程&#xff0c;需要向存 儲過程中傳遞字符串&#xff0c;因為SQL Server 2000中沒有內置類似于 split 的函數&#xff0c;只好自己處理&#xff0c;將前臺數據集中的一列用逗號拆分存到一個List中&#xff0c;再轉化為字符串傳給存儲過程&#xff0c;很…

CodeForces - 976F Minimal k-covering

Description 給你一張左邊 \(n_1\) 個點&#xff0c;右邊 \(n_2\) 個點&#xff0c; \(m\) 條邊的二分圖。對于每一個 \(0\le k\le minDeg\) &#xff0c;求選取哪些邊可以使每個點的度數都不小于 \(k\) 。 \(1\le n_1,n_2\le 2000\) &#xff0c; \(m\le 2000\) Solution 大力…

進制轉換詳細解說

進制的由來&#xff1a;任何數據在計算機中都是以二進制的形式存在的。二進制早起由電信號開關演變而來。 一個整數在內存中一樣也是二進制的&#xff0c;但是使用一大串的1或者0組成的數值進行使用很麻煩 所以就想把一大串縮短點&#xff0c;講二進制中的三位用一位表示。 這三…

刪除Windows 7自動創建的隱藏分區

如果你安裝了Windows 7測試版&#xff0c;在安裝完成后發現Windows 7自動劃出一個隱藏的分區&#xff0c;大小為200MB的。又不懂該怎樣刪除&#xff1f; 其實這個隱藏分區的刪除比較麻煩的&#xff0c;如果貿然使用DM等分區工具來刪除&#xff0c;會損壞硬盤的分區表。即使是使…

jQuery --- 簡單操作合集

// 獲取所有<p>元素 $("p");// 獲取一個ID為myDiv的<div>元素 $("div#myDiv");// 獲取所有type屬性等于"text"的<input>元素 $("input[typetext]");// 獲取所有p元素并隱藏它們 $("p").hide();// 獲取ID為…

6.2 常見多媒體標準及壓縮技術

MPEG-1是視頻的壓縮標準.這個標準是在1993年8月份發布的.標準就規定了視頻文件以每秒鐘1.5MB的速率來傳輸數字媒體它的運動圖像以及伴音的編碼.這個標準它包括了五個部分. MPEG-2它是1994年推出來的一個壓縮標準&#xff0c;也是用于視頻的。MPEG-2、MPEG-4、MPEG-7、MPEG-21它…

Single Number II

2018-06-17 14:04:27 問題描述&#xff1a; 問題求解&#xff1a; 方法一、如果對空間復雜度沒有要求&#xff0c;那么直接使用HashMap對每個數字出現次數進行計數&#xff0c;最后對HashMap遍歷一遍即可&#xff0c;總的時間復雜度為O(n)&#xff0c;空間開銷較大。 方法二、對…

JavaScript --- 自定義優先級隊列

根據HTTP1.1的規范,一個客戶端在同一時刻與同一域名不能有兩個以上的連接。為了完全符合HTTP1.1,一個典型的解決方案就是使用優先級隊列.下面是自定義的優先級隊列 /** * 用原型模式定義PriorityQueue的方法, * 如果沒有定義_compare()方法,那么第一個方法就是默認的_compare(…

可添加至收藏夾并在瀏覽器地址欄運行的JS代碼

編輯當前網頁 代碼如下&#xff1a; javascript:document.body.contentEditabletrue; document.designModeon; void 0 無敵圖片風火輪 在地址欄運行下面的代碼可提取所有圖片元素在頁面上滾動顯示&#xff0c;屬于網頁顯示特效。 代碼如下&#xff1a; javascript:R0; x1.1; y1…

SOA相關資料

http://www.cnblogs.com/mushroom/p/4369032.html轉載于:https://www.cnblogs.com/tianciliangen/p/7825959.html

打造自己Django博客日記

本教程使用的開發環境 本教程寫作時開發環境的系統平臺為 Windows 10 &#xff08;64 位&#xff09;&#xff0c;Python 版本為 3.5.2 &#xff08;64 位&#xff09;&#xff0c;Django 版本為 1.10.6。 建議盡可能地與教程的開發環境保持一致&#xff08;尤其是 Python 與 D…

vue --- 使用字符串'api'跨域請求資源

vue環境下,修改config/index.js文件 module.exports {data: {proxyTable: {/api: {target: http://siwei.me, // 將api轉發到siwei.me上changeOrigin: true,pathRewrite: {^/api: // 去掉url中的api}}}, }原請求: http://localhost:8080/api/interface/blogs/all 新請…

重慶兩江新區將建國內最大“云計算”數據基地

全市經濟工作會指出&#xff0c;要盡快啟動、全力爭取打造國內最大的數據處理基地&#xff0c;最終要做成上百萬臺服務器、上千億美元規模的“云計算”基地&#xff0c;成為全球數據開發和處理中心。昨日&#xff0c;市經信委主任沐華平接受本報專訪時表示&#xff0c;重慶正在…

如何在前端生成二維碼

第一步&#xff1a; 引入&#xff1a;<script src"qrcode.js"></script> 第二步&#xff1a; <div id"qrcode"></div> 第三步&#xff1a; // 1.簡單使用方式 &#xff1a;new QRCode(document.getElementById(qrcode), http://ww…

vue --- Vue中的路由跳轉問題

import Vue from vue import Router from vue-router // 前2個導入時vue框架自帶的 import SayHi from /components/SayHi // 這個導入是自己寫的位于components下的sayHiVue.use(Router) // 用到了vue的Router模塊 export default new Router({routes: [{path: /say_hi,…

水瓶與天蝎的八年愛戀(圖

新浪網友&#xff1a;kinkihi 水瓶與天蝎的八年愛戀我水瓶&#xff0c;他蝎子。我們相戀8年&#xff0c;確切的說中間有5年在一起的時間不超過6個月&#xff0c;兩人一直處于異地狀態&#xff0c;說出來可能沒幾個人能信&#xff0c;我們是這樣走過來的。我一直是嚴格要求自己&…

Controller上使用@CrossOrigin注解

本文首次發布于My Blog,作者Ian,轉載請保留原文鏈接。 就是一個跨域的注解 Spring MVC 從4.2版本開始增加了對CORS的支持 CORS介紹請看這里&#xff1a;https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS 參考isea533&#xff1a;https://blog.csdn.net/…