我的代码改变css属性我做错了什么?

时间:2013-02-13 07:24:03

标签: jquery html css

我在我的jquerymobile项目中使用以下css覆盖了listview的css

li{
height:90px !important;
border-style: 0px !important;
border-width: 0px 5px 2px 0px !important;
-moz-border-image: url('images/FA-iPhone_my-goals_READY-(2)_02.png') 0 5 2 0 stretch     !important;
-webkit-border-image: url('images/FA-iPhone_my-goals_READY-(2)_02.png') 0 5 2 0 stretch     !important;
-o-border-image: url('images/FA-iPhone_my-goals_READY-(2)_02.png') 0 5 2 0 stretch     !important;
border-image: url('images/FA-iPhone_my-goals_READY-(2)_02.png') 0 5 2 0 fill stretch !important;}

有效。但是,在每个列表视图中,我有一个我用作按钮的图像。我用div包装了图像,并给了div“#selectbtn”的id。我正在尝试使用这里的方法:

http://www.jquery4u.com/dynamic-css-2/change-css-jquery/

因此,使用下面的代码,#four1是页面的ID(jquerymobile将其视为页面) #selectbtn当然是在listview中用作按钮的图像的名称。图像的文字显示为“选择”。所以我希望当我点击它时,它可以将上面的li选择器的属性和值更改为下面的新属性和值。

<script>
$('#four1').live('pagecreate', function(e){
$("#selectbtn").click(function(e) {
$('li').css({'height': '90px !important'});
$('li').css({'border-style': '0px !important'});
$('li').css({'border-width': '0px 5px 2px 0px !important'});
$('li').css({'-moz-border-image':url('+images/goalsel_02.png+ !important')'});
$('li').css({'-webkit-border-image':url('+images/goalsel_02.png+ !important')'});
$('li').css({'-o-border-image':url('+images/goalsel_02.png+')' !important});
$('li').css({'border-image': 'url('+images/goalsel_02.png+')' !important});

    });
});
</script>

3 个答案:

答案 0 :(得分:1)

您应该正确分配属性。

$(element).css("property", "value"); //if assigning one property

$(element).css({ "property1" : "value1", "property2" : "value2" }); // more than 1 property and also keep that quotes right

您还必须关心您的报价。

喜欢

$(element).css({ "background-image" : "url('path_to_image') !important" });

答案 1 :(得分:1)

您需要以JSON格式分配,例如:

$(element).css({ "property1" : "value1", "property2" : "value2" });

或者,如果您只想添加一个属性,请使用:

$(element).css("property", "value");

不是单个属性的JSON格式。

答案 2 :(得分:0)

除了答案之外,不要多次选择你的元素。您可以在一个css函数中添加所有css样式,如答案所示。

如果要将其他函数应用于给定元素,可以使用链接(另请参阅:http://tobiasahlin.com/blog/quick-guide-chaining-in-jquery/)。这背后的原因是你不希望jQUery为你应用的每个函数搜索相同的元素。