事件代理就如同快遞代收點,提高性能。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="js/jquery-1.12.4.min.js"></script>
<script>
$(function(){
var $li = $('.list li');
var $ul = $('.list');
//第一種寫法,相當於把li循環八次,性能低
/* $li.click(function(){
$(this).css({'background':'red'});
}) */
//事件代理性能較高
$ul.delegate('li','click',function(){
$(this).css({'background':'green'});
})
})
</script>
</head>
<body>
<ul class="list">
<li>第一個</li>
<li>第二個</li>
<li>第三個</li>
<li>第四個</li>
</ul>
</body>
</html>