你好!
我收到了以下代码:
function UpdatePriceSubscribeButton() {
if (_userPriceSubscribe > 0) {
$("#btUpdatePriceSubscribing").removeClass("con");
$("#btUpdatePriceSubscribing").addClass("conActive");
$("#btUpdatePriceSubscribing").unbind('onmouseover').unbind('onmouseout');
}
else {
$("#btUpdatePriceSubscribing").removeClass("conActive");
$("#btUpdatePriceSubscribing").addClass("con");
$("#btUpdatePriceSubscribing").mouseover(function() { this.className = 'conActive'});
$("#btUpdatePriceSubscribing").mouseout(function() {this.className = 'con'});
}
};
这个问题是,当onmouseout时,即使_userPriceSubscribe设置为1,该类也会被更改?
我在这里尝试做的是使用jquery在客户端更改当前类和悬停类。
编辑1:我还改编了$(“#btUpdatePriceSubscribing”)。unbind('omouseenter mouseleave');在这里消化:http://api.jquery.com/hover/
编辑2:这有效:
function UpdatePriceSubscribeButton() {
if (_userPriceSubscribe > 0) {
$("#btUpdatePriceSubscribing").removeClass("con");
$("#btUpdatePriceSubscribing").addClass("conActive");
$("#btUpdatePriceSubscribing").unbind('omouseenter mouseleave');
}
else {
$("#btUpdatePriceSubscribing").removeClass("conActive");
$("#btUpdatePriceSubscribing").addClass("con");
$("#btUpdatePriceSubscribing").hover(function () { this.className = 'conActive' }, function () { this.className = 'con' });
}
};
但这是一个很好的方法吗?
BestRegards
答案 0 :(得分:1)
设置一个 onmouseout / onmouseover处理程序在mouseout处理程序中查找价格是否有意义?
$("#btUpdatePriceSubscribing").mouseover(function () {
if (_userPriceSubscribe > 0) {
this.className = "..."
}
}
(否则我不确定我会得到你想做的......)
答案 1 :(得分:1)
事件名称为mouseenter
而不是omouseenter
。因此,除非omouseenter
是自定义事件,否则您需要更改此行:
$("#btUpdatePriceSubscribing").unbind('omouseenter mouseleave');
为:
$("#btUpdatePriceSubscribing").unbind('mouseenter mouseleave');
答案 2 :(得分:0)
这解决了我的问题:
function UpdatePriceSubscribeButton() {
if (_userPriceSubscribe > 0) {
$("#btUpdatePriceSubscribing").removeClass("con");
$("#btUpdatePriceSubscribing").addClass("conActive");
$("#btUpdatePriceSubscribing").unbind('omouseenter mouseleave');
}
else {
$("#btUpdatePriceSubscribing").removeClass("conActive");
$("#btUpdatePriceSubscribing").addClass("con");
$("#btUpdatePriceSubscribing").hover(function () { this.className = 'conActive' }, function () { this.className = 'con' });
}
};