NO jQuery
В настоящее время я проверяю, нажал ли пользователь за элемент.Однако, когда console.log
вызывает event.target
, я вижу, что один щелчок происходит на 2 элементах (один - элемент ввода, а другой - метка).Сначала отображается элемент метки, в результате чего функция думает, что нажатие не произошло на элементе ввода, и, следовательно, щелчок произошел за пределами элемента, но это не так.
Причина, по которой я хочу проверить,печать находилась вне элемента ввода, а не надписи, потому что есть <span>
и другие элементы, которые срабатывают при нажатии.
Мой код пока:
document.addEventListener("click", function(event) {checkChecked(event); });
function checkChecked(inputEvent) {
if(inputElement !== inputEvent.target && !inputElement.contains(inputEvent.target)) {
console.log("click outside");
}
}
И HTML:
<li class="payment-shipping-method checked">
<h3>
<input type="radio" name="paymentMethodId" id="payment-method-7-radio" class="payment-method" value="7" checked="">
<label for="payment-method-7-radio">
<span class="figure"><b><img src="img" alt=""></b></span>
<span class="caption">caption<span class="price zero">
<span class="amount">0</span>
<span class="currency"> kr</span>
</span><i>caption</i></span>
</label>
</h3>
<div class="description"></div>
</li>
Как я могу это сделать?