jQuery并在两种情况之间切换
我有这个密码jQuery并在两种情况之间切换,jquery,Jquery,我有这个密码 <a href="#"> <span style="border-right: medium none;" class="Yes">Yes</span> </a> <a href="#"> <span class="No">No</span> </a> 如果“否”为“当前”我想在单击“是”类调用时调用“当前”添加“是”范围并从“否”中删除“当前”类 如果是current我想当点击n
<a href="#">
<span style="border-right: medium none;" class="Yes">Yes</span>
</a>
<a href="#">
<span class="No">No</span>
</a>
如果“否”为“当前”我想在单击“是”类调用时调用“当前”添加“是”范围并从“否”中删除“当前”类
如果是current
我想当点击no class调用current
添加no span并从yes中删除current
class时
我希望每个案例只需单击一下即可发生。这是一个示例。这是第一次切割,可能是可以优化的。我所要做的就是从所有元素中删除
current
类,并将其添加到当前元素中
您必须修改您的html以拥有唯一的类
<a href="#">
<span style="border-right: medium none;" class="Yes yesno">Yes</span>
</a>
<a href="#">
<span class="No yesno">No</span>
</a>
看看是否有帮助。这是一个示例。这是第一次切割,可能是可以优化的。我所要做的就是从所有元素中删除
current
类,并将其添加到当前元素中
您必须修改您的html以拥有唯一的类
<a href="#">
<span style="border-right: medium none;" class="Yes yesno">Yes</span>
</a>
<a href="#">
<span class="No yesno">No</span>
</a>
看看是否有帮助。试试这个:
$(".Yes, .No").click(function() {
if(!$(this).hasClass("current"))
$(".Yes, .No").toggleClass("current");
});
Yes
和No
都会触发单击,但只有在当前操作没有发生的情况下才会执行该操作。只需将current设置为您最初想要的任何值,从那时起,切换将按照您在问题中所描述的那样进行操作。尝试以下操作:
$(".Yes, .No").click(function() {
if(!$(this).hasClass("current"))
$(".Yes, .No").toggleClass("current");
});
Yes
和No
都会触发单击,但只有在当前操作没有发生的情况下才会执行该操作。只需将当前值设置为您最初想要的值,从那时起,切换将按照您在问题中描述的那样处理它。也许我误解了您的问题,但看起来您正在尝试生成类似单选按钮的功能
<div class="radioButtons">
<a href="#">Yes</a>
<a href="#">No</a>
<a href="#">Maybe</a>
</div>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
function select(event) {
var clicked = $(event.target);
clicked.siblings('a').removeClass('selected');
clicked.addClass('selected');
}
$(function() {
$('.radioButtons a').click(select);
});
</script>
功能选择(事件){
var clicked=$(event.target);
单击。兄弟姐妹('a')。removeClass('selected');
单击.addClass('selected');
}
$(函数(){
$('.radioButtons a')。单击(选择);
});
也许我误解了你的问题,但看起来你在尝试制作一些类似单选按钮的东西
<div class="radioButtons">
<a href="#">Yes</a>
<a href="#">No</a>
<a href="#">Maybe</a>
</div>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
function select(event) {
var clicked = $(event.target);
clicked.siblings('a').removeClass('selected');
clicked.addClass('selected');
}
$(function() {
$('.radioButtons a').click(select);
});
</script>
功能选择(事件){
var clicked=$(event.target);
单击。兄弟姐妹('a')。removeClass('selected');
单击.addClass('selected');
}
$(函数(){
$('.radioButtons a')。单击(选择);
});
如何确定什么是“当前”聪明的解决方案,如何确定什么是“当前”聪明的解决方案,但如果两个解决方案最初都没有类当前
,会发生什么情况?@Teja-我假设基于一开始会遇到的问题。如果您阅读了问题的文本,则在每个操作案例中,只有当另一个元素具有当前
类时,才会发生问题。如果您不能在服务器端执行此操作,那么您可以在以下各项上默认为no:$(.no”).addClass(“当前”)
聪明的解决方案,但是如果他们两个最初都没有类current
,会发生什么呢?@Teja-我假设基于一个最初的问题。如果您阅读了问题的文本,则在每个操作案例中,只有当另一个元素具有当前
类时,才会发生问题。如果您不能在服务器端执行此操作,那么您可以在以下各项上默认为no:$(.no”).addClass(“当前”)代码>我不理解$('.yesno')。每个(函数(I,v){$(v).removeClass('current');})代码>为什么不$('.yesno').removeClass('current')代码>?@Nick Craver,是的,不需要循环就可以直接完成,我开始做其他事情,就这样离开了。我在帖子中还提到,这可以进一步优化。我不理解$('.yesno')。每个(函数(I,v){$(v).removeClass('current');})代码>为什么不$('.yesno').removeClass('current')代码>?@Nick Craver,是的,不需要循环就可以直接完成,我开始做其他事情,就这样离开了。我在帖子中也提到,这可以进一步优化。