→ musie:window 掛一個點擊事件,點擊時檢查是否在div內.. 12/20 16:38
推 mrbigmouth:印象中jquery有個plugin新增一堆outside event 12/20 17:27
→ chrisQQ:div 掛 click function,然後所有 div hide()。 12/20 18:21
→ chrisQQ:this.show() 或是你可以取得目前 div id 用不等於id去hide 12/20 18:21
推 mrbigmouth:哇靠...樓上這工程也太大了吧? div多一點豈不是會lag.. 12/20 20:57
→ mrbigmouth:照一樓講去做就對了... 12/20 20:59
推 mrbigmouth:var $div=$('#div');$('body').click(function(e){ 12/20 21:05
→ mrbigmouth: if ($(e.target).parents('#div').length<1){ 12/20 21:05
→ mrbigmouth: $div.hide(); 12/20 21:06
→ mrbigmouth: } 12/20 21:06
→ mrbigmouth:}); 12/20 21:06
→ mrbigmouth:以上是假設該div id為div的寫法 12/20 21:06
推 mrbigmouth:啊 parents會不包括自身.... 12/20 21:10
推 mrbigmouth:if裡面要加&& $(e.target).attr('id')!='div' 12/20 21:20
→ mrbigmouth:不過這還滿笨的 更聰明的寫法找別人吧.... 12/20 21:20
→ chrisQQ:我原本看成是點擊 div 消掉其他 div :( 不過看起來, 12/20 21:53
→ chrisQQ:原PO只是想做 lightbox/colorbox 的效果罷了… 12/20 21:54
→ chrisQQ:至於會有 100 個 div 只是想測試一下很多 div 到底多慢 12/20 21:54
→ chrisQQ:可以開 firefox/chrome 看 console log 裡面有記 12/20 21:55
→ chrisQQ:timestamp。 12/20 21:55
→ chrisQQ:另外 IE 如果有問題的話是正常的,我記得 ie9 之前都沒有 12/20 22:00
→ chrisQQ:console.log 所以會報炸。我對 IE 很不友善的 XDD 12/20 22:00
→ fr730149:謝謝各位的回答,原來還有outside的plugin 12/21 09:24
→ fr730149:我都忘了還可以用$('body')可以用,這方法夠了 12/21 09:27
→ fr730149:IE 我也很少用…但IE的市佔率高,故不得不配合它 12/21 09:29
→ chrisQQ:是說,拿掉 console.log 那段的話,理論上IE也能動 12/21 10:02