Javascript Can';t更改jquery对象css
我正在尝试使用主干和jQuery更改两个元素(一个子元素)的css。我的代码不起作用。我认为问题在于DOM元素和jQuery对象之间存在差异 这是我的密码:Javascript Can';t更改jquery对象css,javascript,jquery,css,backbone.js,Javascript,Jquery,Css,Backbone.js,我正在尝试使用主干和jQuery更改两个元素(一个子元素)的css。我的代码不起作用。我认为问题在于DOM元素和jQuery对象之间存在差异 这是我的密码: App.Views.ExploreCard.user = App.Views.ExploreCard.Parent.extend({ name: 'user', allowUntyped: true, classes: 'explore-person-box shadowed', onclick: function() {
App.Views.ExploreCard.user = App.Views.ExploreCard.Parent.extend({
name: 'user',
allowUntyped: true,
classes: 'explore-person-box shadowed',
onclick: function() {
window.location.assign(this.data.profilePath);
},
postRender: function() {
App.HCS.redrawHCS(this.$el);
}
});
及
App.HCS={
重绘HCS:函数(元素){
元素。每个(函数(索引、值){
console.log(值);
var hcs=$(值).find('.score');
var border=$(值).find('.user card avatar round');
var score=$(hcs.html();
控制台日志(hcs);
控制台日志(边框);
控制台日志(score);
如果(分数=1){
css(“背景图像”,“图像url('heart\u primary.png')”);
$(border).css(“border”,“3px solid#ff4013;”);
}
否则如果(分数=34){
css(“背景图像”,“图像url('body\u primary.png')”);
$(border).css(“border”,“3px solid#008cb4;”);
}
否则如果(分数=67){
css(“背景图像”,“图像url('minf_primary.png')”);
$(border).css(“border”,“3px solid#fb9f00;”);
}
});
}
};
我不想做任何非常困难的事情。只需更改一些css规则
我遗漏了什么?你有一个
$(border).css("border", "3px solid #fb9f00");
同样对于图像,您需要使用url()
而不是image-url()
演示:,我认为背景图像
属性的更改应该是:
$(hcs).css("background-image", "url('heart_primary.png')");
而不是:
$(hcs).css("background-image", "image-url('heart_primary.png')");
你的.score
和用户卡头像是分区、输入还是什么?在if
之前的这三个控制台.log()
语句显示什么?(同样,这不是问题,但是您可以说hcs.css(…)
和border.css(…)
-不需要将变量包装在$()
中,因为hcs
和border
已经是jQuery对象了。)score
似乎是一个字符串,但您正在将其与数字进行比较。也许您应该显式地转换它?在查询对象的名称前面加一个美元符号($)是一个很好的做法:var$hcs=$(value)Edgar Villegas Alvarado-它们都是div
$(hcs).css("background-image", "url('heart_primary.png')");
$(hcs).css("background-image", "image-url('heart_primary.png')");