0

を使用して展開するセルにメニューが隠されているテーブルがありますslideToggle()。このメニューには、関数<img>onclick=呼び出して要素と数値を渡すものがいくつかあります。今、呼び出しを行った要素の位置を取得しようとしているので、オーバーレイを動的に作成できます<div>。問題は、位置の値を取得できず、その理由がわからないことです。HEREは、私がやろうとしていることの小さな例です。誰でも助けることができますか?

4

1 に答える 1

0

問題は $(this) の使用にあると思います。クリックされた要素を関数に渡しているため、代わりにそれを使用する必要があります。また、オフセットは単にオブジェクトを返すため、左オフセットを明示的に出力するようにアラートを更新しました。代わりに console.log を使用して、返されたオブジェクトを調べることができます (chrome などのブラウザーで)。

window.somefunc = function(el,id){
    var pos = $(el).offset();
    alert(pos.left);
}

ここで JSFiddle を更新しました: http://jsfiddle.net/gRfnb/22/

于 2012-10-29T17:03:28.770 に答える