Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用knockoutjs单击绑定创建汉堡菜单_Javascript_Knockout.js - Fatal编程技术网

Javascript 如何使用knockoutjs单击绑定创建汉堡菜单

Javascript 如何使用knockoutjs单击绑定创建汉堡菜单,javascript,knockout.js,Javascript,Knockout.js,我目前的回购协议 我希望能够使用knockoutjs而不是jQuery重构这个特定的代码。我该怎么做呢 var menu = document.querySelector('#burgMenu'); var main = document.querySelector('main'); var drawer = document.querySelector('#drawer'); menu.addEventListener('click', function(e) { drawer.cl

我目前的回购协议

我希望能够使用knockoutjs而不是jQuery重构这个特定的代码。我该怎么做呢

var menu = document.querySelector('#burgMenu');
var main = document.querySelector('main');
var drawer = document.querySelector('#drawer');

menu.addEventListener('click', function(e) {
    drawer.classList.toggle('open');
    e.stopPropagation();
});
main.addEventListener('click', function() {
    drawer.classList.remove('open');
});

我知道我的项目的其他部分的功能有错误,但现在我只想关注这个。请随时查看我的回购协议以供参考。

您有三个DOM元素。其中两个具有单击绑定,一个具有css绑定。有一个变量表示抽屉是否打开,用于CSS绑定。单击绑定控制其值。就淘汰赛而言,就是这样:

vm={
等参线:可观测(假),
切换:函数(){
vm.isOpen(!vm.isOpen());
},
关闭:函数(){
vm.isOpen(假);
}
};
ko.应用绑定(vm)
。打开{
高度:20雷姆;
背景颜色:绿色;
}

汉堡菜单
主要
抽屉