第二次使用相同的类点击一个项目时出现问题,并且它输出错误,toggle2classes不是一个函数,所以为什么会发生这种情况。
带有.toggle-form类的第一个类:
<a class="toggle-form panel-btn" href="#" title="Create A New Product">C<span></span></a>
$(function() {
$.fn.toggle2classes = function(class1, class2){
if( !class1 || !class2 )
return this;
return this.each(function(){
var $elm = $(this);
if($elm.hasClass(class1) || $elm.hasClass(class2) )
$elm.toggleClass(class1 +' '+ class2);
else
$elm.addClass(class1);
});
};
$('.toggle-form').on('click', function(e) {
e.preventDefault();
$('.form-content').toggle2classes('animate-form-in', 'animate-form-out');
});
});
带有.toggle-form类的第二项:
<div class="panel-content form-content">
<div class="form">
<h1><span class="panel-symbol" href="#" title="Back To Products">C<span><i class="fa fa-plus" aria-hidden="true"></i></span></span>Create Products</h1>
<button class="toggle-form">Cancel</button>
</div>
</div>
错误:
Uncaught TypeError: $(...).toggle2classes is not a function