в штанишкахя хочу чтобы при клике на элементе вызывалась ф-я rating 1 раз
в идеале чтобы код
1.
2.
3.
$('body').on('click', '.left', function(){
rating(post.id, 'down');
});
отрабатывал 1 раз при клике на 1 элементе, потому что на странице могут динамически добавляться новые элементы с классом left
Ваш обработчик, прицепленный к body, не будет отрабатывать 1 раз при наличии на странице нескольких элементов класса left. См.
http://api.jquery.com/on/
Вот что получается с вашим кодом при назначении обработчика click непосредственно элементу класса left:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
.left {
width: 100px;
height: 20px;
border: 1px solid red;
}
</style>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('.left').on('click', function(){
alert(this.offsetTop);
});
});
</script>
</head>
<body>
<div id="chatWindow" class="chtpl0-chat yiichat mt5 posts"><div id="post_182" class="post chtpl0-msg"><div><img class="left"><span class="rating">12</span><img class="right"></div><button data-index="182" class="toggleexecutor executor-unset"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="4"><a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=4">Author Author</a> |</div><div class="chtpl0-date">2015-02-19 01:41:06</div><div class="cost">Цена:5000</div><div class="text">Здрасте выполню</div></div><div class="chtpl0-buttons"><button data-sender="Author" data-index="182" class="chtpl0-answer">Ответить</button><button data-index="182" class="chtpl0-share">Переслать</button><button data-index="182" class="chtpl0-delete">Удалить</button></div></div><div id="post_183" class="post chtpl0-msg"><button data-index="183" class="chtpl0-user-icon-3 usual-cursor"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="1"><a data-toggle="tooltip" title="Administrator Admin" class="ownerref" href="/user/user/view?id=1">Administrator Admin</a> |</div><div class="chtpl0-date">2015-02-19 01:42:23</div><div class="text">Привет, ок нахначаю Автором</div></div><div class="chtpl0-buttons"><button data-sender="Admin" data-index="183" class="chtpl0-answer">Ответить</button><button data-index="183" class="chtpl0-share">Переслать</button><button data-index="183" class="chtpl0-delete">Удалить</button></div></div><div id="post_207" class="post chtpl0-msg"><div><img class="left"><span class="rating">12</span><img class="right"></div><button data-index="207" class="toggleexecutor executor-unset"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="4"><a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=4">Author Author</a> |</div><div class="chtpl0-date">2015-03-19 18:44:01</div><div class="text">111</div></div><div class="chtpl0-buttons"><button data-sender="Author" data-index="207" class="chtpl0-answer">Ответить</button><button data-index="207" class="chtpl0-share">Переслать</button><button data-index="207" class="chtpl0-delete">Удалить</button></div></div><div id="post_334" class="post chtpl0-msg"><button data-index="334" class="chtpl0-user-icon-3 usual-cursor"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="1"><a data-toggle="tooltip" title="Administrator Admin" class="ownerref" href="/user/user/view?id=1">Administrator Admin</a> ответил <a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=" 4'="">Author Author</a> |</div><div class="chtpl0-date">2015-07-24 18:25:06</div><div class="text">jjj</div></div><div class="chtpl0-buttons"><button data-sender="Admin" data-index="334" class="chtpl0-answer">Ответить</button><button data-index="334" class="chtpl0-share">Переслать</button><button data-index="334" class="chtpl0-delete">Удалить</button></div></div><div id="post_335" class="post chtpl0-msg"><div><img class="left"><span class="rating">12</span><img class="right"></div><button data-index="335" class="toggleexecutor executor-unset"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="4"><a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=4">Author Author</a> ответил <a data-toggle="tooltip" title="Administrator Admin" class="ownerref" href="/user/user/view?id=" 1'="">Administrator Admin</a> |</div><div class="chtpl0-date">2015-07-25 08:38:47</div><div class="text">111</div></div><div class="chtpl0-buttons"><button data-sender="Author" data-index="335" class="chtpl0-answer">Ответить</button><button data-index="335" class="chtpl0-share">Переслать</button><button data-index="335" class="chtpl0-delete">Удалить</button></div></div><div id="post_336" class="post chtpl0-msg"><div><img class="left"><span class="rating">12</span><img class="right"></div><button data-index="336" class="toggleexecutor executor-unset"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="4"><a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=4">Author Author</a> ответил <a data-toggle="tooltip" title="Customer Customer" class="ownerref" href="/user/user/view?id=" 3'="">Customer Customer</a> |</div><div class="chtpl0-date">2015-07-25 08:39:29</div><div class="text">88</div></div><div class="chtpl0-buttons"><button data-sender="Author" data-index="336" class="chtpl0-answer">Ответить</button><button data-index="336" class="chtpl0-share">Переслать</button><button data-index="336" class="chtpl0-delete">Удалить</button><button data-index="336" class="chtpl0-accept">Одобрить</button></div></div><div id="post_337" class="post chtpl0-msg"><div><img class="left"><span class="rating">12</span><img class="right"></div><button data-index="337" class="toggleexecutor executor-unset"></button><div class="chtpl0-content"><div class="owner chtpl0-nickname" data-ownerid="4"><a data-toggle="tooltip" title="Author Author" class="ownerref" href="/user/user/view?id=4">Author Author</a> ответил <a data-toggle="tooltip" title="Administrator Admin" class="ownerref" href="/user/user/view?id=" 1'="">Administrator Admin</a> |</div><div class="chtpl0-date">2015-07-25 08:39:30</div><div class="text">88</div></div><div class="chtpl0-buttons"><button data-sender="Author" data-index="337" class="chtpl0-answer">Ответить</button><button data-index="337" class="chtpl0-share">Переслать</button><button data-index="337" class="chtpl0-delete">Удалить</button></div></div></div>
</body>
</html>
Каждый элемент откликается, когда по нему производится click. Именно для этого элемента отрабатывает обработчик click, а не для какого-то другого.