Поэтому я пытаюсь добавить значок к изображению, как только кто-то «пометил» часть изображения - то есть они отправили форму.
Как мне это сделать в jQuery?
Просто чтобы прояснить ... представьте, что вы на Flickr, и вы видите изображение. Вы хотите добавить аннотацию, вы нажимаете на изображение, где вы хотите, и оно показывает вам поле формы. Вы вводите информацию, которую хотите, затем, после того, как вы это сделали, в верхней части рисунка осталось небольшое изображение, показывающее, где вы оставили комментарий.
Есть идеи?
Редактировать - см. Код:
<script type="text/javascript">
$(function() {
var tag_box = $("<div>").appendTo("body").css({
"width": "40px",
"height":"40px",
"border":"4px solid #000000",
"position":"absolute",
"display":"none",
"padding":"15px"
});
var comment_box = $("<form action='#'><input id='comment' type='text' name='comment' placeholder='Add comment'></form>").appendTo(tag_box).css({"position":"absolute"});
var comment_icon = $("<img src='images/asterisk_yellow.png' width='16' height='16' alt='Comment'>");
$("#image-wrapper").live("click", function(e) {
tag_box.css({
"left": e.pageX - 40,
"top": e.pageY - 40,
"display": "block"
})
.after(comment_box.css({
"left": e.pageX - 65,
"top": e.pageY + 40
}));
return false;
});
$("form").submit(function() {
var params = $(this).serialize();
$("form")[0].reset();
return false;
});
});
</script>
<body>
<div align="center">
<img src="images/image1.gif" width="760" height="182" alt="image1" id="image-wrapper">
</div>
</body>
То, что я пытаюсь сделать, - это когда пользователь щелкает область (он видит квадратную рамку, показывающую, где он помечает). Затем они вводят комментарий, и комментарий сохраняется в переменной (пока), но затем я хотел бы отметить эту область (изображения) изображением ... в данном случае это «звездочка». Так что я думаю, что решение должно было бы знать координаты или что-то, где был добавлен комментарий. Я искал offset (), но я относительно новичок в jQuery и с трудом собираю кусочки.