誰かが助けてくれることを願って、このコードから必要なものを取り出して自分で機能させることができないようです。
Jquery UI を使用できず、ホバーが必要以上に難しくなります。ホバーをフェードインおよびフェードアウトする必要があるスプライトがあります。.css() はフェードを許可せず、bg 位置によって呼び出されるスプライトです
私の計画は、mouseenter/leave または hover でクラスを追加/削除することです。その部分は簡単で、イージング効果を得るのは簡単ではありません。これが彼らのコードです。このようなものを使用してクラスを追加および削除するだけで、フェードインしてアニメーション/時間指定ホバーを偽造できるようにするにはどうすればよいですか?
$(".nav").children("li").each(function() {
var current = "nav current-" + ($(this).attr("class"));
var parentClass = $(".nav").attr("class");
if (parentClass != current) {
$(this).children("a").css({backgroundImage:"none"});
}
});
// create events for each nav item
attachNavEvents(".nav", "home");
attachNavEvents(".nav", "about");
attachNavEvents(".nav", "services");
attachNavEvents(".nav", "contact");
function attachNavEvents(parent, myClass) {
$(parent + " ." + myClass).mouseover(function() {
$(this).append('<div class="nav-' + myClass + '"></div>');
$("div.nav-" + myClass).css({display:"none"}).fadeIn(200);
}).mouseout(function() {
// fade out & destroy pseudo-link
$("div.nav-" + myClass).fadeOut(200, function() {
$(this).remove();
});
});
}
私が使用しているcssは、次のようなものです。
.btn_up {
width: 161px;
height: 40px;
background-position: -131px -310px;
margin:10px auto;
}
.btn_uphover{
background-position: -292px -310px !important;
-moz-opacity:0;
filter:alpha(opacity=0);
opacity:0;
}