【发布时间】:2012-02-13 08:48:57
【问题描述】:
我在编写一个函数来更改 document.ready 上 div 上的背景图像时遇到了一些麻烦
我还没有制作 jsfiddle,因为我认为问题只是我糟糕的(但正在改进)jQuery 技能。如果您认为需要,请告诉我。
背景信息 -> 我有一个 div 的集合,其中包含一个 portlet-visible 或 portlet-hidden 类,这些 div 中的每一个都有另一类红色箭头(或不同的颜色,但是一旦我有了一种颜色,它应该很容易推断)。当页面加载时,我想要一个函数,它可以找到所有具有 portlet-hidden 或 portlet-visible 类的 div,并查看它们是否具有红色箭头类。如果他们这样做,则将背景图像 src 更改为不同的值。
我真的很难解决这个问题,非常感谢任何帮助。
我的 HTML
<div class="portlet-visible red-arrow"></div>
我的 CSS
div.portlet-visible
{
position:absolute;
top:12px;
right:10px;
background-image:url(../images/red-arrow-up.png);
width:14px;
height:14px;
}
最后是我的 javascript
$(document).ready(function() {
$(".portlet-hidden" && ".portlet-visible").each(function() {
if ($("this").hasClass(".red-arrow")) {
$(this).css(background-image, url('"url(../images/blue-arrow-up.png)"')
};
});
});
【问题讨论】:
-
如果我能提供更多信息,请告诉我。谢谢
-
为什么这行代码是字符串:
if ('$("this").hasClass(".red-arrow")') {。应该是这样的:if ($("this").hasClass(".red-arrow")) {. -
我已经在 javascript 中修改了
-
你认为
".portlet-hidden" && ".portlet-visible"在做什么?您是否定义了url函数?看起来更像是你想要.css('background-image', "url(../images/blue-arrow-up.png)"),background-image不是一个有效的变量名。
标签: javascript jquery syntax each