Мені потрібно використовувати JavaScript для імітації дії натискання кнопок. Як я цього можу досягти? Чи можу я цього досягти за допомогою jQuery?
Відповіді:
Так, ви можете це зробити за допомогою jquery. Використовуйте triggerфункцію. Тут документація . Ось зразок:
$('#foo').trigger('click');
$(this).trigger('click');
event.preventDefault();
Ви можете виконати обробник події кліку, призначений елементу керування кнопкою:
$("#mybutton").click();
Просто .click () :
$("#theButton").click();
Наступний код буде надрукований клацанням два рази один із $('.submitBtn').click();та інших$('.submitBtn').trigger('click')
$(document).ready(function() {
$('.submitBtn').on('click', function() {
console.log("Clicked!");
})
$('.submitBtn').click();
$('.submitBtn').trigger('click')
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<button menu="submitBtn" class="submitBtn len4 btn" title="submit" data-code-m="sbm.submit"> Click me
</button>
Обернувши його в цю "функцію готовності до анонімного документа", ви переконаєтесь, що кнопка є там, перш ніж натиснути її. Про всяк випадок, коли він спробує клацнути до того, як елемент, який ви хочете натиснути, буде завантажений. Це вирішить цю проблему.
Також пам’ятайте, що в ідентифікаторі використовується хеш (тобто # кнопка закриття), але якщо ви хочете натиснути елемент, який має КЛАС, то поміняйте хеш на одну крапку (тобто .close-button).
jQuery(document).ready(function() {
$("#close-button").trigger('click');
});
.click()метод ванілі ? Чи існує якась різниця у вартості виконання між ними?