如果你想獲得頂部和左側的座標或包含矩形或多邊形塊,試試這個
var i, x = [], y = [];
var c = $(this).attr('coords').split(',');
for (i=0; i < c.length; i++){
x.push(c[i++]);
y.push(c[i]);
}
var t = y.sort(num)[0];
var l = x.sort(num)[0];
alert('top = ' + t + ', left = ' + l);
function num(a, b){ return (a-b); }
獲得頂部,左側圓的座標這取決於是否你要包含cirlce
var c = $(this).attr('coords').split(',');
var t = c[1] - c[2];
var l = c[0] - c[2];
alert('top = ' + t + ', left = ' + l);
或圓上的點,既最遠的頂部和左側
塊的座標210
var c = $(this).attr('coords').split(',');
var t = parseFloat(c[1]) - parseFloat(c[2]) * Math.cos(r);
var l = parseFloat(c[0]) + parseFloat(c[2]) * Math.sin(r);
alert('top = ' + t + ', left = ' + l);
太棒了,感謝您的幫助。只是爲了清楚起見,當你在第一位使用「num」時,我假設你正在引用一個函數來對數組進行數字排序?例如:function num(a,b){return(a-b); } – jpea 2010-04-07 16:06:51
@jpea:啊,是的......我一定把這個功能遺漏了。 – Mottie 2010-04-07 16:24:45