#javascript
#javascript
Вопрос:
При запуске следующего скрипта на этой странице происходит задержка следующего выполнения, потому что, когда у меня нет функции window.onload, код выполняется до загрузки страницы, а я хотел, чтобы код выполнялся после загрузки страницы.
Есть ли другой способ выполнить следующий скрипт сразу после загрузки страницы и без задержки.
Изображение: Красная стрелка указывает на элемент redemptionsearchslider
<script>
window.onload = function () {
setTimeout(loadAfterTime, 10)
};
function loadAfterTime() {
document.getElementById('redemptionsearchslider').nextSibling.click();
document.getElementById('redemptionsearchslider').parentElement.parentElement.style.display = 'none';
}
</script>
Комментарии:
1. это звучит как проблема X / Y. Какой желаемый эффект вы хотите увидеть?
2. Вы можете выполнить загрузку страницы с помощью
window.addEventListener("load",loadAfterTime)
3. Я хочу, чтобы следующий код запускался после загрузки страницы document.getElementById(‘redemptionsearchslider’).nextSibling.click(); document.getElementById(‘redemptionsearchslider’).parentElement.parentElement.style.display = ‘none’;
Ответ №1:
Вы могли бы попробовать это:
document.addEventListener("DOMContentLoaded", function(){
// Your code goes here
});
Комментарии:
1. Если это решение сработало для вас, вы должны пометить его как принятый ответ или проголосовать за @Ayaz
2. Я сделал @StPaulis, но поскольку я новичок, он просто записывает это, но не показывает вам… Я получаю это сообщение при голосовании. «Спасибо за отзыв! Голоса, поданные теми, у кого репутация менее 15, записываются, но не изменяют публично отображаемую оценку публикации. »
Ответ №2:
Вы можете написать <script>
тег сразу после элемента HTML "redemptionsearchslider"
. Таким образом, вы сможете выполнить код как можно скорее.
Что-то вроде этого:
<div id="redemptionsearchslider">...</div>
<script>
(function () {
function loadAfterTime() {
document.getElementById('redemptionsearchslider').nextSibling.click();
document.getElementById('redemptionsearchslider').parentElement.parentElement.style.display = 'none';
}
setTimeout(loadAfterTime, 10)
})();
</script>
Ответ №3:
Вы можете удалить setTimeout
window.addEventListener("load",loadAfterTime);
будет выполняться при загрузке страницы