Изменить текстовый узел диапазона будет гораздо эффективнее, чем модифицировать innerHTML.
function mouseMoveAction(ev) {
span.firstChild.data = new Date.toString();
}
Но если текстовые узлы не будут удовлетворять требованию, и вам нужен innerHTML при перемещении мыши, вы можете установить пороговое значение в обработчике перемещения мыши.
/* Keep CPUs to a minimum. */
var MOUSE_MOVE_THRESHOLD = 25,
lastMouseMoveTime = -1;
function mousemoveCallback(ev) {
var now = +new Date;
if(now - lastMouseMoveTime < MOUSE_MOVE_THRESHOLD)
return;
lastMouseMoveTime = now;
mouseMoveAction(ev);
}
Избегайте jQuery, et al; они без необходимости делают вещи намного медленнее и добавляют намного больше сложности.