2011-12-04 6 views
-3

動作しません。私はこのコードを持っている:jquery offset();

$("#pile2_3").click(function() { 

      alert($("#cardSelected").offset()); 

}); 

<div id="cardSelected"></div> 

をし、それはおそらく間違っていることができるか、警告ボックスで、[オブジェクトのオブジェクト]値を返す続けますか?ありがとう。

+3

オフセットjQueryのプロパティとして、これら2つの値を含むオブジェクトを返しますので...ドキュメントを読んで、二つの数字で表されます。http://api.jquery.com/offset/ –

答えて

5

$().offset()はオブジェクトを返します。利用可能なすべての小道具を見に

$("#cardSelected").offset().top; 

$("#cardSelected").offset().left; 

またはconsole.log($("#cardSelected").offset()):しかし、あなたはそれがプロパティのアクセスする必要があります。

0

offset関数は、leftプロパティとtopプロパティを持つオブジェクトを返します。

次のことを試してみてください。

var offset = $("#cardSelected").offset(); 
alert('Left: ' + offset.left + ', Top: ' + offset.top); 
+0

私が見る、私は私はどこに問題があるか知っていると思う。完全に質問をダンプする、それについて申し訳ありません:) – user1005644

2

.offset()はうまく働いています。それは吸うalert()

{left: 42, top: 9000} 

:それは次のようになりますオブジェクトを返します。常に引数を文字列に変換し、Object.prototype.toStringは基本的に文字列[object Object]を返す関数です。

ではなく、デバッグにconsole.log()を使用してください。

+1

本当ですが、iOSのコンソールは[Object Object]を返します! – Pierre

+4

誰がiOSについて何を言ったのですか? –

0

オフセットはオブジェクトです。

var offset = $("#cardSelected").offset(); 
alert(offset.left);