應該是一個非常簡單的答案,但我現在無法弄清楚它。我有這個按鈕:按鈕點擊jquery不工作
<button id="logout" type="button">Logout</button>
而且它應該在身體的底部運行腳本標籤內這jQuery代碼:
$("#logout").addEventListener("click", function() {
alert('Button Clicked');
});
但是,沒有警報彈出。我不明白。提前致謝。
應該是一個非常簡單的答案,但我現在無法弄清楚它。我有這個按鈕:按鈕點擊jquery不工作
<button id="logout" type="button">Logout</button>
而且它應該在身體的底部運行腳本標籤內這jQuery代碼:
$("#logout").addEventListener("click", function() {
alert('Button Clicked');
});
但是,沒有警報彈出。我不明白。提前致謝。
addEventListener
是DOM
元件的方法不是jQuery
對象,它是一個數組狀結構,它包含所有被選擇的DOM元素
要附加使用jQuery
事件,使用.on
=>附加一個對一個或多個事件來選擇的元素事件處理函數
試試這個:
$("#logout").on("click", function() {
alert('Button Clicked');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="logout" type="button">Logout</button>
使用JS:
document.getElementById("logout").addEventListener("click", function() {
alert('Button Clicked');
});
<button id="logout" type="button">Logout</button>
編輯:可以使用$(SELECTOR)[0]
獲得由jQuery selector
返回數組類對象第一DOM element
或$(SELECTOR).get(0)
您應該使用on方法來使用jquery中的事件處理函數。 addEventListener是一個核心的JavaScript事件方法。
$("#logout").on("click", function() {
alert('Button Clicked');
});
您仍然可以使用addEventListner迫使jQuery代碼爲JavaScript:
$("#logout")[0] //Now, this is JavaScript Object
.addEventListener("click", function() {
alert('Button Clicked');
});
您可以使用jQuery的點擊/功能上爲獲得按鈕工作。
實施例:
$("#logout").on("click", function() { alert('Button Clicked'); });
$("#logout").click(function() { alert('Button Clicked'); });
addEventListener()
方法註冊在EventTarget
指定的監聽器。
如果你真的想用addEventListener
然後寫下面的代碼:
var el = document.getElementById("logout");
el.addEventListener("click", function() {
alert('Button Clicked');
}, false);
否則這樣做與jQuery
$(document).on("click", "#logout", function() {
alert('Button Clicked');
});
OR
$("#logout").on("click", function() {
alert('Button Clicked');
});
備選答案是:
$(document).on("click", "#logout", function() {
alert('Button Clicked');
});
這也適用於動態創建的元素。
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#logout").on("click", function() {
alert('Button Clicked');
});
});
</script>
</head>
<body>
<button id="logout" type="button">Logout</button>
</body>
</html>
var element = document.getElementById("logout");
element.addEventListener("click", myFunction);
function myFunction() {
// your code logic comes here
}
如果你去到控制檯像螢火蟲和類型$()
你會看到jQuery對象,顯示了jQuery函數/對象的方法和屬性。此對象上沒有addEventListener。
addEventlistener
是一種用於DOM的方法。如果您想通過「少寫多點」來利用jQuery,請使用jQuery方法,如on
。這將允許您在元素上添加事件處理程序。
$(document).on("click", "#logout", function() {
alert('button clicked');
});