在jQuery中的两个类之间切换

前端之家收集整理的这篇文章主要介绍了在jQuery中的两个类之间切换前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图修改的图标为 jQuery UI portlets.而不是有一个加到最小化和减去扩展,我想切换他们。

我只有有限的成功,它第一次点击减去它翻转到一个加号,但加号从不翻转到减号。任何帮助,这将是非常感激。

下面是一个HTML示例:

@H_404_6@<script src="scripts/jquery-1.3.2.js" type="text/javascript" ></script> <script src="scripts/ui/ui.core.js" type="text/javascript"></script> <script src="scripts/ui/ui.sortable.js" type="text/javascript"></script> <div class="column"> <div class="portlet"> <div class="portlet-header">Links</div> <div class="portlet-content">Lorem ipsum dolor sit amet,consectetuer adipiscing elit</div> </div> </div>

这是我想出的jQuery:

@H_404_6@<script type="text/javascript"> $(function() { $(".column").sortable({ connectWith: '.column' }); $(".portlet").addClass("ui-widget ui-widget-content ui-helper-clearfix ui-corner-all") .find(".portlet-header") .addClass("ui-widget-header ui-corner-all") .prepend('<span class="ui-icon ui-icon-minusthick"></span>') .prepend('<span class="ui-icon ui-icon-closethick"></span>') .end() .find(".portlet-content"); $(".portlet-header .ui-icon-minusthick").click(function() { $(this).removeClass("ui-icon-minusthick"); $(this).addClass("ui-icon-plusthick"); $(this).parents(".portlet:first").find(".portlet-content").toggle(); }); $(".portlet-header .ui-icon-plusthick").click(function() { $(this).removeClass("ui-icon-plusthick"); $(this).addClass("ui-icon-minusthick"); $(this).parents(".portlet:first").find(".portlet-content").toggle(); }); $(".portlet-header .ui-icon-closethick").click(function() { $(this).parents(".portlet:first").toggle(); }); $(".column").disableSelection(); }); </script>

编辑:这是jQuery UI demo网站的原始javascript:

@H_404_6@<script type="text/javascript"> $(function() { $(".column").sortable({ connectWith: '.column' }); $(".portlet").addClass("ui-widget ui-widget-content ui-helper-clearfix ui-corner-all") .find(".portlet-header") .addClass("ui-widget-header ui-corner-all") .prepend('<span class="ui-icon ui-icon-plusthick"></span>') .end() .find(".portlet-content"); $(".portlet-header .ui-icon").click(function() { $(this).toggleClass("ui-icon-minusthick"); $(this).parents(".portlet:first").find(".portlet-content").toggle(); }); $(".column").disableSelection(); }); </script>

我不知道他们是如何得到加号和减号正确切换。

解决方法

这可能是因为当你绑定这些函数没有结果$(“。portlet-header .ui-icon-plusthick”)。它没有找到它。您可以将此绑定添加到$(“。portlet-header .ui-icon-minusthick”)。添加“ui-icon-plusthick”类后,单击(function(){…。

编辑:
备选解决方案可以是:

@H_404_6@$(".portlet-header .ui-icon-minusthick").toggle(function() { $(this).removeClass("ui-icon-minusthick"); $(this).addClass("ui-icon-plusthick"); $(this).parents(".portlet:first").find(".portlet-content").toggle(); },function() { $(this).removeClass("ui-icon-plusthick"); $(this).addClass("ui-icon-minusthick"); $(this).parents(".portlet:first").find(".portlet-content").toggle(); });

所以第一次点击将是第一个功能,第二次点击将是第二个功能

原文链接:https://www.f2er.com/jquery/184417.html

猜你在找的jQuery相关文章