Если уж оптимизировать то невычислять каждый раз индекс а сделать это один раз.
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function(){
$('.img').each(function (index) {
$(this).click(function (e) {
alert(index+1);
e.preventDefault();
});
});
});
</script>
</head>
<body>
<div class="text">
<div>
Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!
<a href="" class="img"><img src="http://javascript.ru/forum/images/smilies/victory.gif" /></a>
</div>
<div>
Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст! Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!Тут какой то текст!
<a href="" class="img"><img src="http://javascript.ru/forum/images/smilies/victory.gif" /></a>
<a href="" class="img"><img src="http://javascript.ru/forum/images/smilies/victory.gif" /></a>
</div>
</div>
</body>
</html