私がleft-buttonでクリックすると、下の画像のように機能するはずです。xとyの位置。
しかし、その代わりに、私のコードは、これをやっています。
Iは、例えば(以下バイオリンを参照)からなります。イメージでわかるように、私の現在の問題は次のとおりです。
(最初の行だけでなく)上記もすべて変更されています。
私の場合、私は.css('background-color', 'red')
を使ってテストしています。
私はそれらの2つのポストに情報を収集しました。
私がleft-buttonでクリックすると、下の画像のように機能するはずです。xとyの位置。
しかし、その代わりに、私のコードは、これをやっています。
Iは、例えば(以下バイオリンを参照)からなります。イメージでわかるように、私の現在の問題は次のとおりです。
(最初の行だけでなく)上記もすべて変更されています。
私の場合、私は.css('background-color', 'red')
を使ってテストしています。
私はそれらの2つのポストに情報を収集しました。
いけないあなたが望む結集ものを知っているが、これ試してみてください。
$.expr[':'].xy = function (obj, index, meta, stack) {
var xy = meta[3].split(',');
var x = xy[0];
var y = xy[1];
var el = $(obj);
var el_offset = el.offset();
return el_offset.left == y && (el_offset.top-el.height() == x || el_offset.top+el.height() == x);
}
UPDATE:
をうーん、あなたがこのようにそれらのすべてを選択することができます。
$.expr[':'].xy = function (obj, index, meta, stack) {
var xy = meta[3].split(',');
var y = xy[0];
var x = xy[1];
var el = $(obj);
var el_offset = el.offset();
// check for top and bottom 3 blocks
if ((el_offset.top-el.height() == y || el_offset.top+el.height() == y) && (el_offset.left+el.width() == x || el_offset.left == x || el_offset.left-el.width() == x))
return true;
// left and right
else if (el_offset.top == y && (el_offset.left+el.width() == x || el_offset.left-el.width() == x))
return true;
return false;
}
してから、次のように実行します。
$(document).ready(function myfunction() {
$('.content').on("click", function() {
var obj_left = $(this).offset().left;
var obj_top = $(this).offset().top;
$('#wrap').find('.content:xy(' + obj_top + ',' + obj_left + ')').css('background-color', 'red');
});
});
返事をありがとう。あなたの例をチェックしたところ、私が探していたものです。 –
おそらく更新が役に立ちます – Vytautas
補足に本当に感謝します。元の質問の一部ではなかったので、コメントの余分な質問を削除しました。私は少し罵倒していました。しかし、本当にありがとう補完=) –
あなたの質問は何ですか?あなたはどこにいるのですか? –
左クリックと右クリックは、最良のデザインアイデアではありません。たとえば、Macのラップトップユーザーはそれに非常に苦労するでしょうし、難しさを分かち合う多くの人がいると確信しています。 – rid
返事ありがとう、申し訳ありませんが私が望むように表現することができれば。私が@MichaelPetrottaを言おうとしたとき、私はクリックの周りのdivだけを必要としました。しかし、現時点では、私のクリック(最初の行だけではない)と下のすべてのdiv(最初の行だけではない) –