亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么把this改成".aaron2"之后是以倍數增加div的

<!DOCTYPE html>

<html>


<head>

? ? <meta http-equiv="Content-type" content="text/html; charset=utf-8" />

? ? <title></title>

? ? <script src="http://www.xianlaiwan.cn/static/lib/jquery/1.9.1/jquery.js"></script>

? ? <style>

? ? .left,

? ? .right {

? ? ? ? width: 300px;

? ? ? ? height: 120px;

? ? }

? ??

? ? .left div,

? ? .right div {

? ? ? ? width: 100px;

? ? ? ? height: 90px;

? ? ? ? padding: 5px;

? ? ? ? margin: 5px;

? ? ? ? float: left;

? ? ? ? border: 1px solid #ccc;

? ? ? ? background: #bbffaa;

? ? }

? ? </style>

</head>


<body>

? ? <h2>通過clone克隆元素</h2>

? ? <div class="left">

? ? ? ? <div class="aaron1">點擊,clone淺拷貝</div>

? ? ? ? <div class="aaron2">點擊,clone深拷貝,可以繼續觸發創建</div>

? ? </div>

? ? <script type="text/javascript">

? ? ? ? //只克隆節點

? ? //不克隆事件

? ? $(".aaron1").on('click', function() {

? ? ? ?// $(".left").append( $(this).clone().css('color','red') )

? ? ? ?$(".arron1").clone()

? ? })

? ? </script>


? ? <script type="text/javascript">

? ? //克隆節點

? ? //克隆事件

? ? $(".aaron2").on('click', function() {

? ? ? ? ? ? console.log(1)

? ? ? ? $(".left").append( $(this).clone(true).css('color','blue') )

? ? })

? ? </script>

</body>


</html>


正在回答

2 回答

我的理解(以克隆"aaron1"為例):若將"this"改為"aaron1",$(".arron1").clone()表示克隆所有類名為"aaron1"的元素,第一次點擊"aaron1"時克隆出一個,此時共有2個"aaron1"的元素,再次克隆則會對這兩個"aaron1"都克隆一次,所以當你第二點擊克隆時就是克隆出2個"aaron1",以此類推。而"this"指代當前對象,即只克隆當前這一個擁有克隆點擊事件的對象。

0 回復 有任何疑惑可以回復我~

因為在jquery中,對象是一個元素集合?。荒愕谝淮吸c擊前,arron2集合中只有一個元素;第二次點擊前,aaron2中有2個元素;第三次,有4個元素;依次類推。

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么把this改成".aaron2"之后是以倍數增加div的

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號