如何使用html jquery脚本编辑css悬停

如何使用html jquery脚本编辑css悬停,html,jquery,css,Html,Jquery,Css,在询问之前,我想让你们知道以下代码是从视频中提取的,所以所有的信用都归他所有 JS $(".product-colors span").click(function(){ $(".product-colors span").removeClass("active"); $(this).addClass("active"); $("body").css("backg

在询问之前,我想让你们知道以下代码是从视频中提取的,所以所有的信用都归他所有

JS

$(".product-colors span").click(function(){
    $(".product-colors span").removeClass("active");
    $(this).addClass("active");
    $("body").css("background",$(this).attr("data-color"));
    $(".product-price").css("color",$(this).attr("data-color"));
    $(".product-button").css("color",$(this).attr("data-color"));
    $(".product-pic").css("background-image",$(this).attr("data-pic"));
});
HTML


标题
事情
1.000.000$ 
$(“.product colors span”)。单击(函数(){
$(“.product colors span”).removeClass(“活动”);
$(此).addClass(“活动”);
$(“body”).css(“background”,$(this.attr(“数据颜色”));
$(“.product price”).css(“颜色”,$(this.attr(“数据颜色”));
$(“.product button”).css(“颜色”,$(this.attr(“数据颜色”));
$(“.product pic”).css(“背景图像”),$(this.attr(“数据pic”);
});

标题
东西

1.000.000$ 

如果希望在元素悬停时在Javascript/JQuery中设置某些内容,可以使用JQuery的
.mouseover
,请参阅:

$(“.product colors span”)。单击(函数(){
$(“.product colors span”).removeClass(“活动”);
$(此).addClass(“活动”);
$(“body”).css(“background”,$(this.attr(“数据颜色”));
$(“.product price”).css(“颜色”,$(this.attr(“数据颜色”));
$(“.product button”).css(“颜色”,$(this.attr(“数据颜色”));
$(“.product pic”).css(“背景图像”),$(this.attr(“数据pic”);
});
$(“.product按钮”).one('单击',函数(){
$(this.mouseover(function()){
$(this.css(“背景色”、“绿色”);
});
});

标题
事情
1.000.000$ 

试试这个,

使用

工作演示

$(“.product按钮”).mouseover(函数(){
$(this.css(“背景”和“#ffffff”);
$(this.css(“color”和“#00cc00”);
});
$(“.product按钮”).mouseout(函数(){
$(this.css(“color”和“#ffffff”);
$(this.css(“背景”,“00cc00”);
});
。产品卡{
盒影:3px2px10px#555;
宽度:450px;
高度:500px;
填充:30px;
保证金:0自动;
}
.产品图片{
文本对齐:居中;
最大宽度:100%;
高度:自动;
}
.产品按钮{
边框:3px实心#00cc00;
颜色:#ffffff;
文字装饰:无;
填充:10px 20px;
显示:内联块;
宽度:100px;
边缘顶部:20px;
边界半径:30px;
背景:#00cc00;
文本对齐:居中;
}

鞋子
鞋子
1.000.000$ 

我认为最好的方法是使用在活动颜色上设置活动类的事实

当我们使用jQuery的
hover()
函数时,我们可以为
mouseenter
mouseleave
事件设置事件处理程序

mouseenter
事件将颜色设置为当前
产品卡中的活动颜色。
mouseleave
事件删除此颜色

这样,如果您在一个页面上有多个产品,逻辑也可以工作,如下面的示例所示

jQuery不是一个过时的框架。它仍然定期更新。jQuery的强大之处在于您不必担心不同的浏览器实现。然而,现在的浏览器比过去更好地遵循这个标准,因此它不再带来那么多优势,除非您想支持旧的浏览器(主要是Internet Explorer)。 易于使用的语法仍然受到包括您在内的许多人的喜爱,这也是仍然使用jQuery的一个很好的理由。 因为jQuery是在Javascript之上构建的,所以您也可以用普通Javascript做jQuery所做的任何事情

$(“.product colors span”)。单击(函数(){
$(“.product colors span”).removeClass(“活动”);
$(此).addClass(“活动”);
});
$('.product按钮')。悬停(函数(){
var$this=$(this);
var hoverColor=$this.closest('.product card')。查找('.product colors.active')。数据('color');
$this.css('color',hoverColor)
},函数(){
$(this.css('color','');
});

产品1
东西

1. 2. 3. 4. 1.000.000$ 产品2 东西

红色 绿色 蓝色 1.000.000$
由于这是学习练习的一部分,我将添加第二组,并演示如何使用类切换颜色和活动状态。尝试单击“颜色”并将鼠标悬停在“按钮”上以查看发生了什么

在注释中描述每个部分

$(“.product colors”)
.on('click','span.pick',函数(事件){
//允许多个组
让组=$(event.delegateTarget);
//让类切换
让classChoice=$(this.data(“color”);
//将组中处于活动状态的一个变为非活动状态
group.find(“span.pick”).not(this).toggleClass(“active”,false);
$(此).toggleClass(“活动”);
//单击可切换颜色
让toggleMe=group.find(“.choice,.product price”);
toggleMe.removeClass(‘蓝黄绿玫瑰’);
toggleMe.toggleClass(classChoice,$(this).is('.active');
group.find(“.productpic”).css(“背景图像”,美元)(this.data(“pic”));
});
//激活一个,可以通过多种方式完成
$(“产品颜色”)
.each(函数({
让thisDefault=“.pick.”+$(this.data(“默认”);
$(this.find(thisDefault.trigger)('click');
});
//在鼠标输入时添加当前活动颜色
$(“.product按钮”)
.on('mouseenter',函数(事件){
让组=$(event.delegateTarget);
让activeChoice=group.find(“.product colors”).find(“.pick.active”).data(“color”);
$(this.toggleClass(activeChoice);
$(".product-button").mouseover(function() {
    $(this).css("background","#ffffff");
    $(this).css("color","#00cc00");
});
$(".product-button").mouseout(function() {
    $(this).css("color","#ffffff");
    $(this).css("background","#00cc00");
});