Javascript 单击“应用具有不同css属性的类”
我试图在单击我的Javascript 单击“应用具有不同css属性的类”,javascript,html,css,Javascript,Html,Css,我试图在单击我的div的li时应用一个类 这是我的js $(document).ready(function() { $('#toggleme').click(function() { $(this1).addClass('active_class'); }); }); 现在,当我单击购物车时,我想更改购物车图像 我正试图通过css应用classbackgroundimage:url(“”)属性。但由于某种原因,我无法让它工作 这是我的建议 请帮忙 见 如果声明来自,则计数1是“样式
div的li
时应用一个类
这是我的js
$(document).ready(function() {
$('#toggleme').click(function() {
$(this1).addClass('active_class');
});
});
现在,当我单击购物车时,我想更改购物车图像
我正试图通过css应用classbackgroundimage:url(“”)代码>属性。但由于某种原因,我无法让它工作
这是我的建议
请帮忙 见
如果声明来自,则计数1是“样式”属性,而不是带有选择器的规则
您有两个应用于元素的背景图像规则:
.active_class {
background-image : url("http://cdn.mysitemyway.com/etc-mysitemyway/icons/legacy-previews/icons-256/simple-red-glossy-icons-business/086707-simple-red-glossy-icon-business-cart5.png");
}
及
样式属性1更具体,“赢”
避免使用样式属性。在样式表中定义默认样式。(或者完全删除它,因为none
是浏览器样式表中的默认设置)。将JS代码更改为:
$(document).ready(function () {
var img=0;
$('#toggleme').click(function () {
$(this).toggleClass('active_class');
if(img==0){
$(this).find("img").attr("src", 'http://cdn.mysitemyway.com/etc-mysitemyway/icons/legacy-previews/icons-256/simple-red-glossy-icons-business/086707-simple-red-glossy-icon-business-cart5.png');
img=1;
}else{
$(this).find("img").attr("src", 'http://www.daru-koi.com/images/winkelwagen.png');
img=0;
}
});
});
还要注意的是,代码中的图标是由img
标记源而不是CSS产生的。因此,使用CSS覆盖不会有帮助
上面的代码每次单击时都会切换源代码。您的jQuery工作正常,因为它在单击时切换活动的类。您可以使用开发工具(在Chrome或IE中,按F12)进行验证
问题是jQuery的目标是
元素,但其中有一个
元素,它不会以任何方式受到jQuery的影响
您需要在CSS中将默认购物车图像显示为背景,并使用jQuery在其与其他图像之间切换。尝试仅使用图标而不使用图像。这是一种更好的做法。嗯,图像有不同的颜色和属性,所以不能使用图标或其他东西。如果你更改颜色属性,它也会更改图标的颜色。你可以用css制作所有的文本效果。当我点击的时候,这些效果不应该被替换掉吗?我不确定这东西是如何应用的“当我点击的时候,它不应该被替换吗?”-不。你的JS没有触及style属性。“我不确定这东西是如何应用的”-它被硬编码到你放在你的实例中的HTML中。明白吗,彻底地感谢我的类activeclass
没有与您的代码一起应用。我正在做其他css属性,所以需要附加activeclass
的属性。如果您看到了,我正在更改activeclass
$(文档)中的颜色。就绪(function(){$('.'toggleme')。单击(function(){$('.menu')。切换(“slide”);$(this)。toggleClass('active_class');If(img==0){$(this)。查找(“img”).attr(“src”,'/assets/cartlogo.png');img=1;}else{$(this.find(“img”).attr(“src”,'/assets/cart1logo.jpeg');img=0;}}})代码>不起作用。您可以检查控制台以查看是否有任何错误吗?
$(document).ready(function () {
var img=0;
$('#toggleme').click(function () {
$(this).toggleClass('active_class');
if(img==0){
$(this).find("img").attr("src", 'http://cdn.mysitemyway.com/etc-mysitemyway/icons/legacy-previews/icons-256/simple-red-glossy-icons-business/086707-simple-red-glossy-icon-business-cart5.png');
img=1;
}else{
$(this).find("img").attr("src", 'http://www.daru-koi.com/images/winkelwagen.png');
img=0;
}
});
});