我刚刚开始玩jQuery,并创建了一个简单的函数。它工作正常,除了这个事实,它是活跃的并且只是第一次继续工作。 (该功能本身就像选择列表)。当您再次单击它时,它不响应。为什么是一次性功能?
$('.selected').click(function(){
$(this).removeClass('selected').addClass('selectoption');
$('.selectoption').show().click(function(){
$(this).removeClass('selectoption').addClass('selected');
$('.selectoption').hide();
});
return true;
});
.selectoption {
display: none;
float: right;
clear: both;
margin-top: 3px;
padding: 5px 10px 5px 10px;
text-align: right;
color: #FFFFFF;
background: #3399FF;
border: solid #ffcc00 1px;
}
.selected {
display: block;
border-bottom: dashed #3399FF 1px;
}
<div style="display: block; position: absolute; top: 32px; right: 220px; border: 0;">
<a href="#" class="selected">1</a>
<a href="#" class="selectoption">2</a>
<a href="#" class="selectoption">3</a>
<a href="#" class="selectoption">4</a>
</div>
http://stackoverflow.com/questions/3731361/click-event-executed-only-the-first-time 的http:// stackoverflow.com/questions/10194728/jquery-click-event-works-only-once 和许多 –
我建议你在浏览器中打开调试器,并在每个点击处理程序中放置一个断点。我怀疑你会发现两个点击处理程序正在运行,并且每个处理程序都执行另一个处理程序的反转处理,所以你不会看到任何净变化。 – dsh