這些語法之間有什麼不同,請詳細解釋一下?這些語法之間有什麼不同,請詳細解釋一下嗎?
$(document).on("click", "#index1", function() {
$(p).hide();
});
$("#index2").on("click", "#index1", function() {
$(p).hide();
});
$("#index1").on("click", function() {
$(p).hide();
});
這些語法之間有什麼不同,請詳細解釋一下?這些語法之間有什麼不同,請詳細解釋一下嗎?
$(document).on("click", "#index1", function() {
$(p).hide();
});
$("#index2").on("click", "#index1", function() {
$(p).hide();
});
$("#index1").on("click", function() {
$(p).hide();
});
在第一種情況下,您將單擊偵聽器添加到「文檔」,但只有在「#index1」處單擊時纔會執行該偵聽器。 第二步 - 將偵聽器添加到「index2」,並且僅當您單擊位於「#index2」內部的「#index1」時纔會執行該偵聽器。 在第三種情況下,您只需將聽衆添加到「index1」
謝謝你...順便說一句,我第二次感到困惑。現在清楚 –
讓我們先想象一個網頁。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<button id='index1'>click me</button>
</body>
</html>
這將工作
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<button id='index1'>click me</button>
<script type="text/javascript">
$("#index1").on("click", function() {
$(p).hide();
});
</script>
</body>
</html>
這不會工作,因爲在執行該腳本不存在的元素。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript">
$("#index1").on("click", function() {
$(p).hide();
});
</script>
<button id='index1'>click me</button>
</body>
</html>
但隨着周圍的工作它會
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript">
$(document).on("click", "#index1", function() {
$(p).hide();
});
</script>
<button id='index1'>click me</button>
</body>
</html>
這是說,只要一個點擊事件在文檔檢查解僱,如果點擊了#index1
元素上發射。所以事件如果元素不存在回調被附加到文檔節點。現在,當點擊文檔時,它會檢查它是否源自於#index1
請參閱http://api.jquery.com/on/ – undefined
^這裏有詳細解釋。 – adeneo
堆棧不是學校或教程網站。在某些地方,爲了向您提供代碼所帶來的麻煩請求幫助,這對我來說是一種有效的代碼語法。此外,由於您沒有提及恕我直言不符合資格作爲問題,那麼您應該閱讀並從手冊中學習,嘗試一些事情,如果某些事情不起作用,那麼請回來併發布一篇文章(真實)問題。 –