我正在构建地图的主题选择器,并且想要反映当前选定的主题。Jquery在点击li项目时更改div文本值
该代码似乎工作,但从不返回“li”项目的值,它总是返回“s-thumbs”,无论我点击的任何“li”项目如何。我尝试使用.closest()方法,但无济于事。
<script language="javascript">
$("ul.s-thumbs").live("click", function(event) {
$("#theme_title").text(
$(this).closest("ul.s-thumbs li").attr("class")
);
});
</script>
<div id="theme">You have selected the <div id="theme_title"></div> Theme</div>
<div class="container_16" id="themebg">
<!--<div class="grid_1"> <a href="" "img" src="/styles/image/leftarrow.png" id="leftarrow" alt=""/></div>-->
<div class="grid_16 slider-wrapper">
<ul class="s-thumbs">
<li class="Default"> <a href="javascript:setRoadmap()"><img src="/styles/image/thumbs/default.png" alt="" /></a>Default</li>
<li class="Hatchery"> <a href="javascript:setGreen()"><img src="/styles/image/thumbs/hatchery.png" alt="" /></a>Hatchery</li>
</ul>
</div>
为什么你使用'活()'?什么是'#theme_title'? – fcalderan
我使用了live(),因为我按照链接的文章(有点更新)我同意:) #theme_title是我希望文本出现的div。对不起,我应该在代码中粘贴它,现在更新它 – ficho