场景:我有两个按钮。在两个按钮之间是一个 V 形图像,具有用 css 定义的三个状态。每个州都有一个中立的阶级,卖它,买它。根据页面的不同,V 形可能处于三种状态中的任何一种。在鼠标悬停在两个按钮中的任何一个上时,我试图切换相应的类。示例:如果默认状态为“buy-it”类,将鼠标悬停在“购买”按钮上将不会执行任何操作,将鼠标悬停在“出售”按钮上将切换“出售”类,但返回默认的“购买”,鼠标悬停时购买. 如果 V 形处于中立状态,将鼠标悬停在任一按钮上都会切换买入/卖出,但会返回中立。
它是如此接近,但并没有完全按照我的意愿行事。
(function(){
var buttonChevrons = (function(){
var initialize = function(){
_setDefault();
_setListeners();
}
//set default state
var _setDefault = function(){
//$(".chevron").addClass("neutral");
}
//set event listeners
var _setListeners = function(){
//Buy button
$("#btnbuy").hover(function(){
//default neutral state
if( $(".chevron").hasClass("neutral")) {
$(".chevron").toggleClass("buy-it");
}
//if buy it
else if( $(".chevron").hasClass("buy-it")) {
$(".chevron").toggleClass("");
}
//if sell it
else if( $(".chevron").hasClass("sell-it")) {
$(".chevron").toggleClass("buy-it");
}
})
//Sell button
$("#btnsell").hover(function(){
//default neutral state
if( $(".chevron").hasClass("neutral")) {
$(".chevron").toggleClass("sell-it");
}
//if sell it
else if( $(".chevron").hasClass("sell-it")) {
$(".chevron").toggleClass("");
}
//if buy it
else { $(".chevron").hasClass("buy-it")
$(".chevron").toggleClass("sell-it");
}
})
}
//call initialize
return {init: initialize}
}());
//call buttonChevrons
this.buttonChevrons = buttonChevrons;
}).call(this);
$(document).ready(function(){
buttonChevrons.init()
});