Я полагаю, потому что скрипт в вашем HTML body
, а не в голове. Переместите его на head
, и он срабатывает только один раз.
Есть ли причина, по которой он у вас есть?
РЕДАКТИРОВАТЬ: Для пояснения, как отмечал Марсель Корпель , сценарии могут быть вложены в body
, и могут быть причины производительности, чтобы иметь их в конце. Но в этой ситуации сценарий был вложен в элемент внутри body
. Это работает, но может привести к неожиданному поведению, если этим элементом манипулируют определенным образом.