1. 程式人生 > >關於jquery的obj.click()、和obj.on()以及行內的onclick事件

關於jquery的obj.click()、和obj.on()以及行內的onclick事件

一般通過jQuery寫觸發事件是我們通常寫的是obj.事件型別()。

以下以點選事件為例:

通常我們直接寫obj.click();實現點選事件的效果,但是這種寫法不支援動態元素或樣式繫結事件。

支援動態元素繫結事件的是.live()和.on()。live在jquery1.7以後就不推薦使用了。

行內的onclick事件也可以實現對js的動態繫結事件。

以下是我自己整理的關於三種寫法的使用,以便以後檢視:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<div class="content">
			<button id="add" onclick="add()">新增</button>
			<button id="onadd" onclick="onAdd()">on新增</button>
			<ul id="ul">
				<li>選單一 <span onclick="delect(this);">刪除</span></li>
				<li>選單二<span onclick="delect(this);">刪除</span></li>
				<li>選單三<span>刪除</span></li>
				<li>選單四<span>刪除</span></li>
				<li>選單五<span>刪除</span></li>
				<li>選單六<span>刪除</span></li>
			</ul>
		</div>
		<script src="js/jquery.min.js"></script>	
		<script>
			function add(){
				$('#ul').append('<li>選單666<span>刪除</span></li>')
			}
			function onAdd(){
				$('#ul').append('<li>on選單666<span onclick="delect(this);">刪除</span></li>')
			}
			function delect(obj){
				$(obj).parent().remove();
				console.log('onclick');
			}
			/*$('ul li span').click(function(){
				$(this).parent().remove();
				console.log('click');
			});*/
			$(document).on('click','#ul li span',function(){
				$(this).parent().remove();
				console.log('on');
			});
		</script>
	</body>
</html>

注意:此處有一個jquery的引入。

此處.on的事件繫結用法是:.on(events,[,selector][,data],handler),.on的selector引數是篩選出呼叫.on方法的dom元素的指定子元素,

原理是:事件冒泡,進行事件委託,子元素把事件委託給父元素進行事件處理。

好處是:萬一子元素非常多,給每個子元素都新增一個事件會影響到效能;為動態新增的元素也能繫結指定事件。


相關推薦

關於jquery的obj.click()obj.on()以及onclick事件

一般通過jQuery寫觸發事件是我們通常寫的是obj.事件型別()。 以下以點選事件為例: 通常我們直接寫obj.click();實現點選事件的效果,但是這種寫法不支援動態元素或樣式繫結事件。 支援動態元素繫結事件的是.live()和.on()。live在jquery1.7

divspan的區別以及元素塊元素的轉換?

div和span的區別以及行元素和塊元素的轉換?相同點:div和span都可以將HTML元素組合起來,類似一個盒子將裡面的內容當作一個整體來處理,從而實現整體作用效果,提高效率。不同點:div是塊級元素,是可用於組合其他HTML元素的容器,其常用的用途是文件佈局,主要用於頁面

CSS 塊級元素block , 元素 inline,以及塊級元素inline-block

block元素(div、p、h1~h6、ul、ol、dl、li、dd、table、hr、blockquote、address、table、menu、pre,HTML5新增的header、section、aside、footer等) 從瀏覽器的顯示結果可以看出,塊級元素新開啟一行(即

(zepto外掛使用)clicktap無效又能實現點選事件小竅門

/******如有雷同   純屬巧合 ********/ 我們就touch的幾種簡單事件進行解析 touchstart事件:當手指觸控式螢幕幕時候觸發,即使已經有一個手指放在螢幕上也會觸發。 touchmove事件:當手指在螢幕上滑動的時候連續地觸發。在這個事件發生期

處理dataTable 重新整理 分頁以及點選事件

http://datatables.club/example/diy.html 注:datatable為table id名稱 var tableListData; $(document).ready(function() {     tableListData = $('

onclick傳入動態字串,在ie11上面點選無反應,也不報錯,chrome就可以 ,怎麼解決

html += "<span class='tabtop' style='color:#0092ff;' onclick=conSee(\'"+row[0]+"\')>檢視</span>"; //呼叫 function conSee(id) {

js中的onclick事件JQuery中的click方法以及on方法事件用法總結

1.onclick是繫結的事件(它是一個事件),注意該事件繫結只是JacaScript中有(js中的),Jquery中並沒有此事件,告訴瀏覽器在滑鼠點選時候要做什麼 2.click方法(jquery中的)作用是觸發onclick事件,只要執行了元素的click()方法,就會觸發onclick事件

jquery實現table動態新增刪除以及的上移下移

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head>  

關於元素塊級元素空元素的區別以及巢狀

在css盒子模型中,html元素中有塊元素(block element)和內聯元素(inline element)。那麼它們究竟是什麼呢?其實,這兩種元素都是html規範中的概念。塊元素(block element)一般是其他元素的容器元素,能容納其他塊元素或內聯元素。最常見

實用工具mycli:MySQLMariaDB Percona 的命令界面

mysqlmycli 是默認的 MySQL 客戶端的現代替代品,mycli 將在你輸入時自動補全關鍵字、表名、列和函數。HomePage: http://mycli.net 使用效果如下:RHEL, Centos安裝方式: 目前作者沒有針對RHEL, Centos提供RPM包,暫時可用pip方式

jQuery裏面clickthis事件遇到(Django模型裏for)相同的id名class名想獲取值

相同 技術分享 簡化 不能 png 要求 clas http color 遇到的原型是這樣的!下面我把它簡化一下; click事件: 在瀏覽器裏面只能獲取橫線上面的值,和下面的第一個值!! 這是因為id等級比class高,而且js要求id不能重復! 當jQu

簡單兩步快速實現shiro的配置使用,包含登錄驗證角色驗證權限驗證以及shiro登錄註銷流程(基於spring的方式,使用maven構建)

protect login uid sim isa 當前 sub efi inf 前言: shiro因為其簡單、可靠、實現方便而成為現在最常用的安全框架,那麽這篇文章除了會用簡潔明了的方式講一下基於spring的shiro詳細配置和登錄註銷功能使用之外,也會根據慣例在文章最

HSSFXSSFSXSSF區別以及Excel導出優化

基本 per springmvc linu cell exce 功能 pch 臨時文件   之前有寫過運用POI的HSSF方式導出數據到Excel(見:springMVC中使用POI方式導出excel至客戶端、服務器實例),但這種方式當數據量大到一定程度時容易出現內存溢出等

【輕松前端之旅】HTML的塊元素元素空元素

mod charts 內聯元素 學習編程 https -s 網址 tip htm 塊(block)元素 顯示成一塊,前後有換行。塊元素常用於web頁面的主要構造模塊。例如:<div>,<p>,<h1>~<h6>,<bl

es6 語法 (mapsetobj 的對比)

map、set modify () logs div map del blog log //數據結構對比 增查改刪 { //map、set和Object let item = {t:1}; let map = new Map(); let

蘋果產品時間發布表統計(iPhoneiPad),以及32位64位機的說明

bsp 產品 13.10 上市 pos min ipad mini 時間排序 手機 之前因為某些原因,需要對apple家族的手機和pad產品做一個上市時間排序,以及分析分別是哪種CPU機型 總結如下: iPad家族: 1、iPad     - 2010.1.27發布 2、

關於盒子模型以及塊元素元素

內邊距 頁面元素 adding 分享圖片 alt pad image con bsp   盒子模型,盒子模型算是頁面比較經典的一個概念了,所有的頁面元素和div都能稱之為一個盒子,每個盒子都具備:內容(content),填充(padding 也稱之為內邊距),邊框(bor

HTML的display屬性將元素塊狀元素塊狀元素互相轉換以及三者的區別

light 參考 utf 嵌入 label 支持 列表項 sub idt 1.行內元素 (1)設置寬高無效 (2)對margin僅設置左右方向有效,上下無效;padding設置上下左右都有效,即會撐大空間 (3)不會自動進行換行 <html> <head

NFVSDN關系NFV關鍵能力以及如何演進

NFV發展和SDN本文繼續探討NFV,其他內容請閱讀前一篇文檔。 1.NFV和SDN的關系 NFV是具體設備的虛擬化,將設備控制平面運行在服務器上,這樣設備是開放的兼容的。SDN是一種全新的網絡架構,SDN的思想是取消設備控制平面,由控制器統一計算,下發流表,SDN是全新的網絡架構。NFV和SDN是高度互補關

Python命令解析庫——argarsedocoptclickinvoke

argarse、docopt、click命令行示例:基本用法$ python [file].py hello Kyle Hello, Kyle! $ python [file].py goodbye Kyle Goodbye, Kyle!W/選項用法(標誌)$ python [file].py hello -