<button type="button" data-ab-testing="{{ settings.enabletest }}" class="Cart__Checkout Button Button--primary Button--full">
<span>{{- 'cart.general.checkout' | t -}}</span>
<span class="Button__SeparatorDot"></span>
<span data-money-convertible>{{ cart.total_price | money_with_currency }}</span>
</button>
Вот кнопка покупки. Это похоже на обычную кнопку с добавлением некоторых дополнительных вещей, чтобы сделать ее динамической c для шаблонных целей. По какой-то причине Javascript ниже не работает с кнопкой.
var addToCartButton = document.querySelector("[data-ab-testing]");
console.log(addToCartButton);
var cartForm = document.querySelector(".Drawer__Content");
addToCartButton.addEventListener("click", function(e) {
if (addToCartButton.dataset.abTesting === "true") {
console.log("true");
}
}, false);
Предполагая, что dataset.abTesting === "true"
уже был проверен (и даже полностью удален, чтобы узнать, была ли это проблема), есть ли причина, по которой это не сработает? Я даже подтвердил, что прослушиватель событий действительно прикреплен к событию. Google Chrome был проблемой c за последние пару дней как разработчик, и мне интересно, действует ли его Chrome каким-то образом. Версия этого кода проработала на моем сверстнике пару дней go, и я в полном проигрыше. Я попытался добавить e
и e.preventDefault()
, а также удалить последнее false в прослушивателе событий. Я собираюсь назвать функцию и добавить ее непосредственно к кнопке (onclick="funcName"
), но даже за пределами того факта, что я не хочу это делать, мне также любопытно, почему это не работает правильно.