Я бы еще и избавился по возможности от написания кода в блоке if, это, по-моему, улучшает его чтение.
var $messageComments = $('.vbMessageChildren');
$messageComments.each(function(index, element) {
var $messageComment = $(element);
var $comments = $messageComment.children('.vbMessage');
if ($comments.length <= 3)
return;
$comments.each(function(index, element) {
var $comment = $(element);
$comment.attr('id', index);
if (index > 2)
$comment.hide();
});
var step = Math.ceil($comments.length / 3);
var html = '<img class="prew" src="путь к файлу"><ul class="paginator">';
for (var id = 1; id <= step; id++)
html += '<li id="' + id + '">' + id + '</li>';
html += '</ul><img class="next" src="путь к файлу">';
$messageComment.append(html);
});
PS. у
Rise в строке 11 используется переменная $comment, вероятно опечатка и должно быть $comments. +не понял, почему значение переменной step не было округлено до большего.