JavaScript-Klickereignisse gelten nur für das Element selbst, nicht für seinen übergeordneten Container
P粉545682500
P粉545682500 2023-09-06 18:50:37
0
1
520

Ich habe den folgenden Code:

<div onclick="myFunc()" style="height:200px;width:200px;">
  <button></button>
</div>

Ich möchte, dass myFunc ausgeführt wird, wenn auf eine beliebige Stelle im Div geklickt wird, nicht jedoch auf die Schaltfläche. Wie kann ich das erreichen?

P粉545682500
P粉545682500

Antworte allen(1)
P粉795311321

在按钮的点击事件中,你需要取消事件传播。或者停止“冒泡”。

参见 https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation

所以在你的按钮的点击事件中,你需要像这样:

function button_click(event) {
    event.stopPropagation();
    console.log("按钮被点击了。");
  }

默认情况下,元素的点击事件会传递给它的父元素。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage