var __custMouseArray = {};

function initCustMouse(id, targetId) {
	__custMouseArray[id] = {target:targetId, over:0, lastOver:0, delay:0};
}

function custOver(id) {
	__custMouseArray[id].over++;
}

function custOut(id) {
	__custMouseArray[id].over--;
}

function runnerCustMouse() {
	for (var id in __custMouseArray) {
		if (__custMouseArray[id].over != __custMouseArray[id].lastOver) {
			__custMouseArray[id].delay++;
			if (__custMouseArray[id].delay > 3) {
				__custMouseArray[id].lastOver = __custMouseArray[id].over;
				__custMouseArray[id].delay = 0;
				var obj = _(__custMouseArray[id].target);
				obj.style.display = (__custMouseArray[id].over ? 'block' : 'none');
			}
		}
		else
			__custMouseArray[id].delay = 0;
	}
}

window.setInterval(runnerCustMouse, 50);
