我正在尝试在jquery中执行以下操作,但无法使其正常工作。
我想选择所有具有名为NODE_ID的自定义属性且值为49_3的DIV标记。然后选择并将src属性更改为其他图像。
这是HTML:
<div style="display: block;" id="71_7_sub_p_div" node_id="49_3">
<span>
<img src="../images/maximize.png"> Greenfield Industrial Park
</span>
</div>
这是脚本:
<script type="text/javascript">
$(document).ready(function(){
$("div[node_id='49_3']:has(img)").attr("src","../images/folder_closed.png");
});
</script>
任何想法都表示赞赏。感谢。
答案 0 :(得分:3)
$("div[node_id='49_3'] img").attr("src","../images/folder_closed.png");
这应该可行,但我建议您使用CSS来处理这些图像,而不是使用javascript来切换src。
<div style="display: block;" id="71_7_sub_p_div" node_id="49_3" class="maximize">
<span> Greenfield Industrial Park</span>
</div>
CSS
.maximize{
background: url(/images/maximize.png) no-repeat;
padding-left: 10px; // width of icon
}
.minimize{
background: url(/images/folder_closed.png) no-repeat;
padding-left: 10px; // width of icon
}
使用Javascript:
<script type="text/javascript">
$(document).ready(function(){
$("div[node_id='49_3']").removeClass('maximize').addClass('minimize');
});
</script>
这样做的好处是,您可以轻松管理CSS中的不同状态样式,而无需在需要将URL更改为图像时挖掘javascript。它还可以让您轻松找出“文件夹”的状态。