我有一些元素的頁面被加載後,庫被注入。這些元素具有由jQuery控制的onClick操作。由於這些項目是在頁面加載後呈現的,jQuery是否會針對這些項目定位問題以應用onClick操作?jQuery應用動作元素被注入
回答
使用形式:
$("#myid").on("click",".myTargetElement", function(){
// do my click stuff here
});
樣品標記:
<div id="myid">
<div class="myTargetElement">Click Me</div>
<div class="myTargetElement">Click Me</div>
</div>
注:此表結合文檔不父元素,迫使文檔遍歷,因此不是最佳建議:
$(".myTargetElement").on("click", function(){
// do my click stuff here
});
Exa mple:克隆在上面的標記中的第一個元素,並讓他們點擊藍色時:
$("#myid").on("click",".myTargetElement", function(){
$(this).css('color','blue');
});
$('.myTargetElement').eq(0).clone().text("New").appendTo('#myid');
這是一個典型的使用委託事件的情況,您將處理程序綁定到父元素並將特定的選擇器作爲參數傳遞,只有在匹配選擇器是觸發事件的選擇器時,jQuery纔會觸發處理程序。
下直接瞭解更多關於jQuery的文檔和委託事件 - >http://api.jquery.com/on/
.on(events [, selector] [, data], handler(eventObject))
events
- 一個或多個空格分隔的事件類型和可選 命名空間,如「點擊」或者「 keydown.myPlugin」。
selector
一個選擇器字符串,用於過濾觸發事件的所選元素的後代。如果選擇器爲空或省略,則在事件到達選定元素時始終觸發事件 。
data
觸發事件爲 時要傳遞給event.data中的處理程序的數據。
handler(eventObject)
觸發事件爲 時執行的函數。值false也可以作爲簡單返回false的 函數的簡寫。
以上是針對可以稍後添加到DOM的動態元素。
注:委派事件
櫃面,你應該總是把它綁定到最接近的靜態容器時綁定的處理器,這將是可用的。更多信息:Should all jquery events be bound to $(document)?
但是,直接綁定元素插入到DOM後綁定處理程序可以實現的元素總是更好。
「注意」的好回答 - bascially綁定到最接近目標的元素,所以它不綁定到文檔。 –
@MarkSchultheiss真實和更新的答案與討論相同的鏈接 –
謝謝,使用'on()'做了伎倆。 – Jon
- 1. jquery檢測元素注入
- 2. 附加jquery datepicker注入元素
- 3. jQuery注入新源視頻元素
- 4. 如何找到元素被拖入jquery
- 5. Mootools元素注入
- 6. jQuery UI Sortable - 確定被拖動元素下面的元素
- 7. Mootools注入新元素
- 8. Mootools注入克隆元素
- 9. AngularJS和DOM元素注入
- 10. JQuery輸入元素
- 11. 使用動態元素JQuery
- 12. 使用jQuery移動元素
- 13. 使用JQuery動畫元素
- 14. jQuery - 如果沒有元素被調用?
- 15. 注入SVG元素並使用jquery訪問它
- 16. jQuery onclick不動態插入HTML元素?
- 17. jQuery可拖動排序輸入元素
- 18. mootools注入禁用的元素
- 19. 當使用jquery'.toggle'輸入元素被隱藏?
- 20. 動畫元素jquery
- 21. 在jQuery中操作動態元素
- 22. jQuery滾動到元素不工作
- 23. 標籤在注入MooTools元素時被剝離文本
- 24. 如果元素被隱藏,jquery css(width,0)不起作用
- 25. jQuery - 如果元素被隱藏,$(this).width()不起作用!
- 26. 谷歌鉻應用程序代碼注入不工作在某些元素
- 27. 使用javascript專注於動態元素
- 28. 動態添加輸入元素作爲樹點擊jquery
- 29. jQuery如何在選擇的每個元素之後注入一個新元素?
- 30. 元素移動jquery滾動
它可以,可以「重新綁定」,如果我可以,元素與任。上(點擊)/生活()根據在你使用的是什麼版本的jQuery。 –
@limelights jQuery 1.7.2。 'on()'工作得很好:) – Jon