popełniłem skrypt do tworzenia kotwic na obrazie. Zasada działania jest taka, że klikając w dowolne miejsce na obrazie w klikniętym miejscu tworzony jest link i jednocześnie dwa inputy z koordynatami położenia kotwicy na obrazku. Można tworzyć dowolną ilość linków na zdjęciu. Niestety w tej chwili działa to tak, że pierwsza kotwica pozycjonowana jest prawidłowo, natomiast kolejne pozycjonują się względem ostatnio dodanego elementu. Niestety nie znam jQuery na tyle żeby wydedukować dlaczego tak się dzieje. Może ktoś mi zasugeruje gdzie jest błąd logiczny w moim skrypcie.
$(function() { $('#picture_container img').click(function(e){ var offset = $(this).offset(); var x = e.pageX-$(this).offset().left; var y = e.pageY-$(this).offset().top; var new_anchor = $("<a>"); var new_input_x = $("<input>"); var new_input_y = $("<input>"); var new_label = $("<label>"); var new_id = x^2 + y; new_anchor.attr("href", "#"); new_anchor.attr("class", "anchor"); new_anchor.css("margin-left", x); new_anchor.css("margin-top", y); new_anchor.html("+"); new_input_x.attr("type", "text"); new_input_x.attr("name", "coor_" + x); new_input_x.attr("value", x); new_input_y.attr("type", "text"); new_input_y.attr("name", "coor_" + y); new_input_y.attr("value", y); new_label.attr("id", new_id); new_label.append(new_input_x); new_label.append(new_input_y); new_anchor.click(function() { $(this).remove(); $("label[id="+ new_id + "]").remove(); } ); $('#picture_container').append(new_anchor); $('#picture_container').append(new_label); }); }); $(function() { $('#picture_container a').click(function(){ $(this).remove(); return false; }); });
Będę wdzięczny za podpowiedź.
Pozdrawiam