Как упоминает @Xaerxess, вам нужно вызвать функцию "setupButtons", когда DOM готов к манипулированию; обычно это делается путем добавления обработчика события к окну «load», что происходит, когда страница полностью загружена (что и делает идиома jQuery $(document).ready(function(){...});
.
Попробуйте добавить этот фрагмент в конец существующего элемента <script>
, чтобы выполнить эту задачу с помощью простого JavaScript, jQuery не требуется:
window.onload = function() { setupButtons(); };
Другой типичный способ сделать это - использовать функцию element.addEventListener ; разница в том, что вы можете добавить несколько обратных вызовов событий таким образом, и они не будут перезаписывать друг друга:
window.addEventListener('load', function() {
setupButtons();
}, false);