我看到很多关于状态悬停和jQuery的事情,但没有关于我的问题。
我想强制一个类成为:当另一个类为:hover
时悬停。
这里很难解释我的代码:
$(document).mousemove(function() {
if($('.h').is(':hover')){
$('.h .btn-1e').trigger('mousover');
}
});
事实是第二类悬停有点复杂,我无法通过addClass
/ removeClass
(悬停包括:after
事物,动画等来实现。)< / p>
感谢您的帮助和对不起我的英语!
答案 0 :(得分:1)
我会这样做:
定义你自己的新悬停类(我知道你写过,你悬停css很复杂但当然你可以用悬停类替换你的悬停,在这里你也可以添加:after ...):
submitClicked: function (e) {
e.preventDefault();
var data = Backbone.Syphon.serialize(this);
// need to convert endpoints object to array
var endpoints = data.endpoints;
delete data["endpoints"];
data.endpoints = [];
for (var idx in endpoints) {
data.endpoints.push(endpoints[idx]);
}
this.trigger("form:submit", data);
}
现在使用jquery:
在此悬停事件函数中设置此悬停类.class1,
.class2 {
width: 40px;
height: 40px;
margin: 30px;
background-color: gray;
}
/* your element has an additional hover class */
.class1.hover,
.class2.hover {
background-color: red;
}
现在您可以说,当鼠标悬停$(".class1, .class2").hover(function() {
//mouseenter
$(this).addClass("hover");
}, function(){
//mouseleave
$(this).removeClass("hover");
});
元素时,所有class2
元素都应成为悬停状态(即悬停类):
class1
我已经让你成为一名玩家:https://jsfiddle.net/0txLn21c/1/
有关详细信息,请阅读API:
https://api.jquery.com/mouseover/
我希望,这可以帮助您,我不知道您的代码,但我认为在您的情况下使用悬停类是不可能的。例如,您可以将悬停类赋予$(".class1").mouseenter(function() {
//on hover class1 force hover state to class2
$(".class2").mouseenter();
}).mouseleave(function() {
//remove it on mouseleave
$(".class2").mouseleave();
});
元素或动画:
:after
答案 1 :(得分:0)
我通常会触发这样的事件:
$(document).mousemove(function() {
if($('.h').is(':hover')){
$('.h .btn-1e').mouseover();
}
});
你试过吗?