jQuery中focusin()和focus()、find()和children()的差别
生活随笔
收集整理的這篇文章主要介紹了
jQuery中focusin()和focus()、find()和children()的差别
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
jQuery中focus()和focusin()、focus()和children()的差別
focus()和focusin()
focus()和focusin()的差別在于focusin()支持事件的冒泡。以下舉例說(shuō)明:
<!doctype html> <html lang="en"> <head><meta charset="utf-8"><title>focusin demo</title><style>span {display: none;}</style><script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body><p><input type="text"> <span>focusin fire</span></p> <p><input type="password"> <span>focusin fire</span></p><script> $( "p" ).focusin(function() {$( this ).find( "span" ).css( "display", "inline" ).fadeOut( 1000 ); }); </script></body> </html>當(dāng)我們點(diǎn)擊輸入框時(shí)。其獲得焦點(diǎn)。導(dǎo)致獲得焦點(diǎn)事件向上冒泡,使得p標(biāo)簽觸發(fā)獲得焦點(diǎn)事件,而focus()并不支持事件冒泡,相同地。focusout()支持事件冒泡,而blur()不支持。
find()和children()
find()和children()的差別在于find()向下追溯多級(jí)子節(jié)點(diǎn),而children()僅僅向下追溯一級(jí)子節(jié)點(diǎn)。find()和children()相同的地方是他們?cè)趯ふ易庸?jié)點(diǎn)時(shí)都不包括自身節(jié)點(diǎn)。
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Document</title><style type="text/css">p{font-size: 20px;width: 200px;color: blue;font-weight: bold;margin: 0 10px;}.hilite {background: yellow;}#test{font-weight: bolder;}</style> </head> <body> <ul class="level-1"><li class="item-i">I</li><li class="item-ii">II<ul class="level-2"><li class="item-a">A</li><li class="item-b">B<ul class="level-3"><li class="item-1">1</li><li class="item-2">2</li><li class="item-3">3</li></ul></li><li class="item-c">C</li></ul></li><li class="item-iii">III</li> </ul><script src="jquery-2.1.4.js"></script><script>$( "li.item-ii" ).find( "li" ).css( "background-color", "red" );</script></body> </html>倘若將上例中的find()替換為children(),會(huì)得到不同的結(jié)果。
總結(jié)
以上是生活随笔為你收集整理的jQuery中focusin()和focus()、find()和children()的差别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 50个Android开发技巧(09 避免
- 下一篇: 用策略屏蔽135 139 445 338