问题:html
Font-Awesome字体在ie7上不能toggle,缘由是Font-Awesome在ie7上使用expression完成显示的。目前网上有不少遇到的但没找到解决方案。java
解决方案:express
比较蠢,采用clone/append完成class的toggle。目前只想到这种方案。欢迎更完美的解决方案。浏览器
htmlapp
<a class="btn btn-link icon-plus-sign"></a>
js字体
$(function() { $(".btn").click(function() { $(".btn").each(function() { //若是是ie7 if(/MSIE 7.0/ig.test(navigator.appVersion)) { var $aClone = $(this).clone(true); if($aClone.hasClass("icon-minus-sign")) { $aClone.addClass("icon-plus-sign").removeClass("icon-minus-sign"); } else { $aClone.addClass("icon-minus-sign").removeClass("icon-plus-sign"); } $(this).after($aClone); $(this).remove(); } else { $a.toggleClass(openIcon); $a.toggleClass(closeIcon); } }); return false; }); });
最后必须return false; 不然会形成ie7浏览器crash掉。this