JavaScript ile bir elemanın tarayıcının görüş alanına göre ya da ebeveyni olan diğer bir elemana göre x ve y koordinatlarını belirlemeye yönelik bir betik hazırladım ve jQuery eklentisi haline getirdim. Eklentinin kendisini ve sıkıştırılmış halini aşağıda bulabilirsiniz.
Kullanımı:
var top = $('#elm').top(); var left = $('#elm').left(); var pos = $('#elm').pos(); top = pos.top; left = pos.left;
/* * jTopLeft * https://www.karalamalar.net/ * * Copyright (c) 2009 İzzet Emre Erkan * Licensed under Creative Commons Attribution-Share Alike 3.0 Unported License * http://creativecommons.org/licenses/by-sa/3.0/ * * Date: 2009-10-12 17:56:24 +0300 (Mon, 12 Oct 2009) * Revision: 3 */ (function($){ $.fn.extend({ top: function(obj) { var o = findPos(this.get(0)); return obj ? o - findPos(obj) : o; }, left: function(obj) { var o = findPos(this.get(0),true); return obj ? o - findPos(obj,true) : o; }, pos: function(obj) { var pos = {},o; o = findPos(this.get(0)); pos.top = obj ? o - findPos(obj) : o; o = findPos(this.get(0),true); pos.left = obj ? o - findPos(obj,true) : o; return pos; } }); function findPos(o,l){ var x = 0; if (o.offsetParent) { x = l ? o.offsetLeft : o.offsetTop; while (o = o.offsetParent) x += l ? o.offsetLeft : o.offsetTop; } return x; } })(jQuery);
Paketin küçültülmüş halini (802 byte) buradan edinebilirsiniz.