私はjQueryが初めてで、非常に明白で基本的な何かが欠けているように感じますが、頭を包み込むことはできません。
いずれにせよ、オブジェクトがホバーされたときにストローク幅をより広い量にアニメーション化するコードが少しあり、それが機能しました。
$(function() {
$("#wheel1").hover(grow1, shrink1);
});
function grow1(evt) {
$("#wheel1").animate({'stroke-width':'100'},300);
$("#circle1container").css({'display':'block'});
$("#circle1container").animate({'opacity':'1'},300);
}
function shrink1(evt) {
$("#wheel1").animate({'stroke-width':'55'},300);
$("#circle1container").animate({'opacity':'0'},300);
}
しかし、他にもこれを行いたいオブジェクトが 10 個あったので、これをさらに 9 回コピーして貼り付け、数値を 9 回変更するのではなく、統合しようとしましたが、うまくいきませんでした。
$(function() {
$("#wheel1").hover(grow("1"), shrink("1"));
$("#wheel2").hover(grow("2"), shrink("2"));
$("#wheel3").hover(grow("3"), shrink("3"));
$("#wheel4").hover(grow("4"), shrink("4"));
$("#wheel5").hover(grow("5"), shrink("5"));
$("#wheel6").hover(grow("6"), shrink("6"));
$("#wheel7").hover(grow("7"), shrink("7"));
$("#wheel8").hover(grow("8"), shrink("8"));
$("#wheel9").hover(grow("9"), shrink("9"));
$("#wheel10").hover(grow("10"), shrink("10"));
function grow(number) {
var name = "#wheel" + number;
$("#wheel" + number).animate({'stroke-width':'100'},300);
$("#circle" + number + "container").css({'display':'block'});
$("#circle" + number + "container").animate({'opacity':'1'},300);
}
function shrink(number) {
$("#wheel" + number).animate({'stroke-width':'55'},300);
$("#circle" + number + "container").animate({'opacity':'0'},300);
}
});
おそらくまだ最も効率的な方法ではありませんが、少し時間がかからず、簡単に変更できると思いました。ここでの取引が何であるかはわかりません。どんな助けでも大歓迎です、ありがとう!
http://jsfiddle.net/F4Yjj/5/これは、ホバーでアニメーション化しようとしているオブジェクトを示しており、ホバーは緑色の形状で機能しています (このメッセージの最初のコード)。