You will need to change your code, jQm page events are working a little bit different. You were binding page events to the every page, and the was a problem. You need to bind them to a single page.
Here's a working example: http://jsfiddle.net/Gajotres/DU493/
var timerObject = {
interval_id : null
}
function checkEverySecond() {
$("#counter").html(parseInt($("#counter").html()) + 1);
};
$(document).on('pagebeforeshow', '#page1', function(){
timerObject.interval_id = setInterval(function() {checkEverySecond()}, 1000);
});
$(document).on('pagehide', '#page1', function(){
clearInterval(timerObject.interval_id);
});
My example is 1 html multipage template but same thing will work the same with multiple html files.
EDIT :
Reason it didn't work in your multi html example was because bind was used instead of on. Also mobileinit should be declared before jQuery Mobile is loaded.