Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';t更改jquery对象css_Javascript_Jquery_Css_Backbone.js - Fatal编程技术网

Javascript Can';t更改jquery对象css

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() {

我正在尝试使用主干和jQuery更改两个元素(一个子元素)的css。我的代码不起作用。我认为问题在于DOM元素和jQuery对象之间存在差异

这是我的密码:

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')");