Button 单击HTML按钮的内容时,OnClick事件不会在该按钮上触发
我的HTML按钮的onClick事件仅在我单击按钮本身时触发,而不是在我单击按钮内的文本或图像时触发-例如,如果单击按钮的下灰色部分,事件将触发,如果单击文本“Legenda”,事件将不会触发 如何通过单击按钮内的文本或图像来触发此事件 HTML: JS:Button 单击HTML按钮的内容时,OnClick事件不会在该按钮上触发,button,onclick,Button,Onclick,我的HTML按钮的onClick事件仅在我单击按钮本身时触发,而不是在我单击按钮内的文本或图像时触发-例如,如果单击按钮的下灰色部分,事件将触发,如果单击文本“Legenda”,事件将不会触发 如何通过单击按钮内的文本或图像来触发此事件 HTML: JS: 请参阅本文中的代码。当您单击按钮内的文本或图像时,实际上是在window.onclick内调用js函数,这将删除div类。您可以为按钮添加ID并添加事件侦听器 函数下拉列表{ document.getElementByIdmyDropdo
请参阅本文中的代码。当您单击按钮内的文本或图像时,实际上是在window.onclick内调用js函数,这将删除div类。您可以为按钮添加ID并添加事件侦听器 函数下拉列表{ document.getElementByIdmyDropdown.classList.toggleshow,true; } window.addEventListener'click',函数{ if!document.getElementById'btnID'.containse.target{ 如果!event.target.matches'.dropbtn'{ var dropdowns=document.getElementsByClassNamedropdown-content; var i; 对于i=0;i
谢谢你的轻松修复!
<button onclick="dropdown()" class="ui-button ui-widget ui-corner-all dropbtn"><img class="legendaicon" src="images/legend-01.png"><span style="vertical-align:super">Legenda</span></button>
<div id="myDropdown" class="dropdown-content">
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p>
</div>
</div>
#legenda {
right: 0.5%;
margin-top: 0.5%;
z-index: 2000;
position: absolute;
}
.legendaicon {
height: 25px;
margin-right: 5px;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f1f1f1;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
z-index: 1;
float: right;
}
.dropdown-content p {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
right: 0;
}
.show {
display: block;
}
/* When the user clicks on the button,
toggle between hiding and showing the dropdown content */
function dropdown() {
document.getElementById("myDropdown").classList.toggle("show");
}
// Close the dropdown menu if the user clicks outside of it
window.onclick = function (event) {
if (!event.target.matches('.dropbtn')) {
var dropdowns = document.getElementsByClassName("dropdown-content");
var i;
for (i = 0; i < dropdowns.length; i++) {
var openDropdown = dropdowns[i];
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
}
}
}
}