我正在使用jQuery 1.11.0,只要我加载jquery-migrate,这个短切换代码就可以正常工作。当我不加载jquery-migrate文件时,我没有看到任何js错误,但页面上没有显示任何文本。什么打破了它?
jQuery(function ($) {
$(".toggle_content").hide();
$("h4.toggle").toggle(function () {
$(this).addClass("clicked");
}, function () {
$(this).removeClass("clicked");
});
$("h4.toggle").click(function () {
$(this).find(".toggle_icon").toggleClass("fa-rotate-270 norotate");
$(this).next(".toggle_content").slideToggle();
});
});
答案 0 :(得分:4)
这里弃用的函数是toggle()
。它仍然存在,但它不再接受在代码尝试时交替执行的两个函数。在您的情况下,您可以将其替换为toggleClass
:
jQuery(function($){
$(".toggle_content").hide();
$("h4.toggle").click(function(){
$(this)
.toggleClass("clicked")
.find(".toggle_icon").toggleClass("fa-rotate-270 norotate").end()
.next(".toggle_content").slideToggle();
});
});