回答
我建議看看jQuery的.off function。 此外,基於this stackoverflow question,我會嘗試刪除所有聽衆每次用下面的代碼
$("body").find("*").off();
希望這可以幫助你。
我剛剛在https://www.reddit.com/place?webview=true上測試了它,但它似乎沒有做任何事情;點擊畫布仍然放大和縮小。代碼是否被破壞或者畫布沒有使用事件偵聽器? – Pikamander2
哦,我認爲onclick並不算作事件監聽者。 – Pikamander2
我試圖找到這個畫布相關的問題上的東西,但我找不到更多的這個職位:http://www.c-sharpcorner.com/UploadFile/cd3310/html5-canvas-disable-event-listener-by -名稱/。 –
你也可以試試這個。
http://jsfiddle.net/LkfLezgd/9/
$("#cloneButton").click(function() {
$('body').replaceWith($('body').clone().html());
});
你可以通過表單元素如低於您的首選方式來刪除事件偵聽器循環。
最快的方法是克隆將刪除所有事件偵聽器的節點,但如果使用'onclick'屬性,則不會刪除該節點。
document.getElementById('button').addEventListener('click', onClick, false);
function onClick() {
console.log('Form clicked');
var form = document.getElementById('myForm');
for(var i = 0; i < form.elements.length; i++){
var elm = form.elements[i];
removeEvents(elm);
}
}
function removeEvents(elm) {
// The fastest way to do this is to just clone the node, which will remove all event listeners:
var new_element = elm.cloneNode(true);
elm.parentNode.replaceChild(new_element, elm);
}
<form id="myForm">
<input id="button" type="button" value="Click" />
</form>
只是克隆HTML DOM,會在默認情況下刪除該事件。
這裏是一個例子。
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#EventButton").click(function() {
alert("Click event worked");
var old_element = document.documentElement;
var new_element = old_element.cloneNode(true);
old_element.parentNode.replaceChild(new_element, old_element);
});
});
</script>
</head>
<body>
<button id="EventButton">Remove Events</button>
</body>
</html>
- 1. SWT從StyledText中刪除所有聽衆
- 2. 如何刪除平變化聽衆
- 3. 刪除標記聽衆
- 4. 如何刪除Magento中每個頁面中的塊?
- 5. 如何從Wordpress中刪除#One頁面
- 6. 如何從頁面中刪除節點?
- 7. 如何從頁面中刪除項目?
- 8. 如何從asp.net頁面中刪除WebResource.axd?
- 9. 如何從一個JavaScript聽衆
- 10. 如何刪除每個頁面上的主頁導航鏈接?
- 11. 聚合物 - 從燈光中刪除水龍頭聽衆
- 12. 從面板中刪除監聽器
- 13. 如何提取/刪除每個頁面的第一個單詞?
- 14. 從jquerymobile頁面中刪除一個類
- 15. 如何從SplitApp中刪除主頁面或詳細頁面?
- 16. 如何從Facebook頁面中刪除頁面標籤?
- 17. 如何刪除添加了addTextChangedListener的所有聽衆
- 18. 如何從IFRAME刪除頁面
- 19. 如何從打印頁面中刪除頁眉/頁腳?
- 20. 訪問從聽衆
- 21. 如何從每個標籤中刪除每個屬性?
- 22. 如何從單個頁面中刪除ajaxpro * .ashx處理程序?
- 23. 如何從單個頁面中刪除.php或.html擴展名?
- 24. 如何從包含很多頁面的UIPageViewController中刪除單個頁面
- 25. 聽衆sd卡移除
- 26. 如何在每個頁面上加載一個監聽器
- 27. 如何從聽衆控制gui
- 28. 傾聽聽衆
- 29. Jetty9多個聽衆
- 30. Alertdialog多個聽衆
爲什麼你需要做的是什麼? – Ryan
你檢查過jQuery .off()嗎? http://api.jquery.com/off/ – Mary
也許你在這裏得到答案: http://stackoverflow.com/questions/19469881/remove-all-event-listeners-of-specific-type –