对于我的一个项目,我们有一个专有的CMS,它首先在客户端实例目录中查找文件,如果没有找到,则默认为公共目录。所以在公共目录中,我有shell.js,它包含一个在bootstrap 2.3.2中设置崩溃div的初始状态的函数。我需要能够在客户端级别禁用此功能,同时仍然具有公共级别的可用功能。我在js / jquery很绿,有人可以帮帮我吗?
shell.js中的代码就是这个......
/*******************************/
/* TOGGLE BUTTON
/*******************************/
var toggleBlock = function() {
var windowsize = $(window).width(),
isDesktop = windowsize > 765;
$("#quicksearch").toggleClass("collapse in", isDesktop);
$("#quicksearch").toggleClass("collapse out", !isDesktop);
$("#sidebar").toggleClass("collapse in", isDesktop);
$("#sidebar").toggleClass("collapse out", !isDesktop);
}
$(document).ready(toggleBlock);
$(window).on("resize.showContent", toggleBlock);
toggleBlock();
将.unbind()成为正确的方向吗?
答案 0 :(得分:1)
一个非常粗糙的解决方案:
var disabledFlag = false;
var toggleBlock = function() {
if(!disabledFlag){
var windowsize = $(window).width(),
isDesktop = windowsize > 765;
$("#quicksearch").toggleClass("collapse in", isDesktop);
$("#quicksearch").toggleClass("collapse out", !isDesktop);
$("#sidebar").toggleClass("collapse in", isDesktop);
$("#sidebar").toggleClass("collapse out", !isDesktop);
}
}
然后在代码的其他地方将标志翻转为true,这将阻止函数执行有意义的代码:
disabledFlag = true;