私のページには12個の要素がありますが(以下では3つしか書かれていません)。一方がクリックされると、もう一方の11は消えます( 'spinOut'というアニメーションを使用)。個々の要素のクリックで実行するコードを書く代わりに、ホバリング時に$test
変数に割り当てられる要素のIDを入力し、次に$test
(要素がホバリングされている)をクリックすると、実行するコードその要素のために。だから、$test
に適用される1ブロックのコードを書くだけでよいのです。つまり、クリックされた要素に適用されます。クリックイベントで使用するために.hover()の変数に要素のIDを割り当てます。
私は、変数$ testに.hover()関数の中で値を割り当てようとしています。私は人々が似たような問題を抱えている多くの記事を見つけましたが、問題を解決した解決策のどれもが私を助けませんでした。私は$test
変数を.hover()関数の中にどのように割り当てて、それを外部で使うことができるか知りたいです。
$(document).ready(function() {
var $test;
$("#M").hover(function() {
$test = "#M";
});
$("#N").hover(function() {
$test = "#N";
});
$("#O").hover(function() {
$test = "#O";
});
//When I define variable value here it works
$($test).click(function() {
$(".pageItem:not("+$test+")").addClass("spinOut");
});
});
可変スコープはここでは問題ありません。 2回目の '$ test'のために何をしようとしているのかを考えてみると、' click'イベントをアタッチするとロード時に '' 'になります。それはどんな要素も選択しません。 –
'var $ test'だけを実行しようとしましたが、うまくいきませんでした。 .hover()関数の中で$ testの値を変更するにはどうすればよいですか? – Mintblaze
@Mintblaze値が変更されている、問題はあなたのクリックイベントです –