Как сделать чтобы секундомер не останавливался при переходе на другую владку?
Логика значит такая.
При создании таймера получаете время его запуска и записываете в localStorage, при определении неактивного состояния страницы записываете это время туда же. И при возвращении высчитав разницу во времени продолжаете считать с нужного момента.
Это плохой секундомер, неправильный. 
setInterval(foo, 1000) будет срабатывать не каждую секунду ровно, а МИНИМУМ через секунду, и будет накапливаться ошибка.
По хорошему надо хранить стартовое (или финишное) время, на каждом тике сравнивать текущее время (new Date()) со стартовым, и только потом отрисовывать циферки на дисплей.
Тогда и проблема с переходом на другую вкладку решается очень просто - стартовое время пишется в localStorage, например. При смене страницы оно просто оттуда читается, и таймер продолжает работу в обычном режиме.
И не выкладывайте код скриншотами, пользуйтесь кнопочкой </>