jQuery .css 背景不重复

10

我试图将元素的背景设置为no-repeat,我尝试了以下方式,但似乎没有效果,我哪里做错了吗?它在a链接上显示出图片,这很好。我使用text-indent隐藏文本链接以将其从页面中移除(隐藏它),但这样也会隐藏背景图像。是否有一种方法可以尝试隐藏链接并仅显示背景图像?以下是我目前所做的-我只需要一些指导来解决这个问题-对jQuery相对较新。

<script type="text/javascript"> //Looking for every td a element and alerting it out on page (popup)

$('.AspNet-DataList td a').each(function (index) {
    //alert(index + ': ' + $(this).text());
    var submitEl = $(".AspNet-DataList td a")
    //.parent('.AspNet-DataList td a')
    .css('background', 'url(/assets/img/radarstep' + (index + 1) + 'dark.png)', 'backgroundRepeat:', 'no-repeat');
});

当我在firebug中查看td a元素时,这是来自jQuery css的内容。 即使从这里将背景设置为no-repeat也不起作用,在主css文件中添加高度和宽度也没有用。 现在感到困惑。

<a id="ctl07_HealthAndSafetyRadarForm_Wizard_SideBarContainer_SideBarList_SideBarButton_5" href="javascript:__doPostBack('ctl00$ctl07$HealthAndSafetyRadarForm_Wizard$SideBarContainer$SideBarList$ctl05$SideBarButton','')" style="background: url("/assets/img/radarstep6dark.png") no-repeat scroll 0 0 transparent;">Review</a>


//main.css
.AspNet-DataList td a {
    /*text-indent: -9999em;*/
    /*display:block;  */
    background-repeat: no-repeat;
    height: 25px;
    width: 25px; 
}
4个回答

25
.css({'background-image' : 'url(/assets/img/radarstep' + (index + 1) + 'dark.png)',
      'background-repeat': 'no-repeat'});

霍德蒙特,这个工作得非常好 - 是否有关于背景不同属性的文档可以添加,例如高度、宽度、透明度?- '.css({'background-image': 'url(/assets/img/radarstep' + (index + 1) + 'dark.png)', 'background-repeat': 'no-repeat', 'height': '25px', 'width': '25px'});' - mjcoder

2

你为什么要注释掉 display: block; 的css?这是告诉浏览器将链接显示为块级元素的必需属性。 此外,我不确定你是否可以像现在这样使用jQuery的 css 属性;你尝试过这种语法吗:div.css( { 属性:值,属性:值 } );


我最初放置了一个块来隐藏页面上的文本以进行测试。我会尝试你的解决方案Jeremy。感谢你花时间帮助我。 - mjcoder
取消注释'display:block'现在可以正常工作,因为它显示了正确的高度和宽度=) - mjcoder

1

试试这个:

.css({
    'background-image': 'url(/assets/img/radarstep' + (index + 1) + 'dark.png)',
    'background-repeat' : 'no-repeat'
});

添加该行后,会返回**预期:':'**。 - mjcoder
哦,我真傻,应该加冒号而不是逗号(有时候我感觉想打自己的脑袋)。 - mjcoder
在你写'background-repeat:'的地方,应该改为'background-repeat',不要在属性名称末尾加上冒号。 - Houdmont

0
 input[type="submit"] {background:url(mybutton.png);background-repeat:no-repeat;height: 29px;width: 44px; }

试试这个,对我来说有效

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接