Проблема в том, что вы используете setInterval неправильно. Никогда передавать строку, но всегда передавать функцию - передача строки так же плоха, как использование eval
:
setInterval(swapImages, 500);
Тогда вам не нужны глобальные переменные / функции.
В случае, если вам нужно передать какие-либо аргументы функции, вы должны обернуть ее в анонимную функцию:
setInterval(function() { /* your code/function call */ }, 500);