課程
/前端開發(fā)
/jQuery
/jQuery基礎(chǔ)(三)—事件篇
弄不懂為什么吧a換成div之后會(huì)彈兩次窗口,求解答?。?!謝謝
2017-03-11
源自:jQuery基礎(chǔ)(三)—事件篇 5-2
正在回答
<!DOCTYPE html><html><head>??? <meta http-equiv="Content-type" content="text/html; charset=utf-8" />??? <title></title>??? <style>?? ???? .left,.right {????? ???????? padding: 5px;??????? margin: 5px;??????? float: left;??????? border: 1px solid #ccc;??? }?? ???? .left {??????? background: #bbffaa;??????? width: 1000px;??????? height: 100px;??? }?? ???? .right{???????? width: 500px;??????? height: 50px;??????? background: yellow;??? }??? </style>??? <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script></head><body>??? <h2>on事件委托</h2>??? <div class="left">??????? <div class="right">?????????? ???????????? <a>點(diǎn)擊這里</a>??????? </div>??? </div>??? <script type="text/javascript">??? //給body綁定一個(gè)click事件??? //沒有直接a元素綁定點(diǎn)擊事件??? //通過(guò)委托機(jī)制,點(diǎn)擊a元素的時(shí)候,事件觸發(fā)??? $('body').on('click', '', function(e) {?????? alert(e.target.textContent)??? })??? </script></body></html>
查了好久,終于知道了。
1.題目的div兩個(gè)標(biāo)簽已經(jīng)重疊了,你每點(diǎn)一次就相當(dāng)于兩個(gè)div都點(diǎn)了。實(shí)際上老師寫錯(cuò)了class名,css里寫的是right但div上的是arron。你可以嘗試一些改變父div的大小,然后再在不同的區(qū)域試一試。
2.a標(biāo)簽里面不能嵌套qa標(biāo)簽使用。可以自己查查
shan330
死之外科醫(yī)生
極武者 回復(fù) 死之外科醫(yī)生
向上冒泡的過(guò)程中碰到兩個(gè)<div>標(biāo)簽
心晴0623
舉報(bào)
jQuery第三階段開啟事件修煉,掌握對(duì)頁(yè)面進(jìn)行交互的操作
3 回答$('body')改成$('div')為什么彈了兩次
2 回答為什么我點(diǎn)擊了按鈕以后,會(huì)觸發(fā)三次alert窗口呢
1 回答為什么點(diǎn)擊文本框聚焦會(huì)彈出窗口?focus不是不冒泡么?求解~
2 回答為什么return false就不會(huì)彈出三次了?
2 回答把a(bǔ) 換成 arron 彈出的結(jié)果不一樣.......求解答
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-04-01
<!DOCTYPE html>
<html>
<head>
??? <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
??? <title></title>
??? <style>
?? ?
??? .left,.right {
????? ?
??????? padding: 5px;
??????? margin: 5px;
??????? float: left;
??????? border: 1px solid #ccc;
??? }
?? ?
??? .left {
??????? background: #bbffaa;
??????? width: 1000px;
??????? height: 100px;
??? }
?? ?
??? .right{
???????? width: 500px;
??????? height: 50px;
??????? background: yellow;
??? }
??? </style>
??? <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
??? <h2>on事件委托</h2>
??? <div class="left">
??????? <div class="right">
?????????? ?
??????????? <a>點(diǎn)擊這里</a>
??????? </div>
??? </div>
??? <script type="text/javascript">
??? //給body綁定一個(gè)click事件
??? //沒有直接a元素綁定點(diǎn)擊事件
??? //通過(guò)委托機(jī)制,點(diǎn)擊a元素的時(shí)候,事件觸發(fā)
??? $('body').on('click', '', function(e) {
?????? alert(e.target.textContent)
??? })
??? </script>
</body>
</html>
2017-04-01
查了好久,終于知道了。
1.題目的div兩個(gè)標(biāo)簽已經(jīng)重疊了,你每點(diǎn)一次就相當(dāng)于兩個(gè)div都點(diǎn)了。實(shí)際上老師寫錯(cuò)了class名,css里寫的是right但div上的是arron。你可以嘗試一些改變父div的大小,然后再在不同的區(qū)域試一試。
2.a標(biāo)簽里面不能嵌套qa標(biāo)簽使用。可以自己查查
2017-03-11
向上冒泡的過(guò)程中碰到兩個(gè)<div>標(biāo)簽