我一直在尝试复制我在互联网上看到的JavaScript脚本,以允许我的下拉菜单打开和关闭。这真的很简单。 Div类被设置为xxx-closed,并且由于JavaScript支持点击,它支持将类更改为xxx-open但我没有运气。
这是我在我的网站上获得的脚本,它只是我从原始脚本中提取的一小段内容。
(".collapsed header").bind("click",function(t) {
t.preventDefault(),
e(this).parent().toggleClass("opened","collapsed").find(".content")}),
e(".foot-sw-cont").addClass("closed"),
e(".foot-sw-cont").click(function(t)
{
t.preventDefault(),e(this).toggleClass("closed"),
e(".foot-address").toggleClass("address-open"),
e(".foot-extra").toggleClass("careers-open")}),
e(".pagetop").click(function(t){
t.preventDefault(),e("html, body").animate({scrollTop:0},1e3)
})
我不确定我的错误是否只是错过了一些代码,当我复制它时,就像我的生活一样,我无法理解JavaScript!因此,我会复制一个更大的块并粘贴到下面,这样你就可以找到我的错误。
.html(n)})}
e(".no-touch .award").hover(function(){
e(this).find(".award-tooltip").addClass("shown")},
function(){e(this).find(".award-tooltip").removeClass("shown")}),
e(".touch .award").toggle(function(){
e(".award-tooltip").removeClass("shown"),
e(this).find(".award-tooltip").addClass("shown")},
function(){
e(this).find(".award-tooltip").removeClass("shown")}),
e(".award-tooltip").click(function(e){e.stopPropagation()}),
t<599&&(e("#y2007, #y2008, #y2009, #y2010, #y2011").addClass("closed"),
e(".award-year").click(function(){
var t=e(this).attr("data-year");
e("#"+t).toggleClass("opened closed")})),
e(".panel-item .content").parent().addClass("collapsed"),
e(".collapsed header").bind("click",function(t) {
t.preventDefault(),
e(this).parent().toggleClass("opened","collapsed").find(".content")}),
e(".foot-sw-cont").addClass("closed"),
e(".foot-sw-cont").click(function(t){
t.preventDefault(),e(this).toggleClass("closed"),
e(".foot-address").toggleClass("address-open"),
e(".foot-extra").toggleClass("careers-open")}),
e(".pagetop").click(function(t){
t.preventDefault(),e("html,body").animate({scrollTop:0},1e3)}),
e(".btn-blogcats").click(function(t){
t.preventDefault(),
e("#blog_cats").toggleClass("collapsed"),
e(this).toggleClass("cats-opened")}),
e("#map").length>0&&initialize(),
e(".come-top").toggle(function(){
e(this).parent().addClass("opened")},function(){
e(this).parent().removeClass("opened")}),
e(".img_links a").click(function(t){
t.preventDefault();
var n=e(this).attr("href");
e("#imgholder").attr("src",n),
e(".img_links a").removeClass("current"),
e(this).addClass("current")
});
答案 0 :(得分:0)
调试压缩的JavaScript真的很难,但是如果我不得不猜测我会打赌.collapsed header
在调用.bind
时从未存在或不存在。
$(document).on("click", ".collapsed header", function (t) {
这会委派click
事件,因此即使在调用.collapsed header
后将其添加到DOM,它也会影响.on
。您也可以尝试在$(document).ready