gpt4 book ai didi

javascript - 使用 forEach 迭代 NodeList 时如何仅使用绑定(bind)而不是调用?

转载 作者:行者123 更新时间:2023-12-03 01:13:37 24 4
gpt4 key购买 nike

我是 Javascript 编程新手。所以请解释一下我可以在此处使用绑定(bind)吗。此菜单的灵感来自 YouTube 上的左侧菜单。当点击菜单标签和图标时,主菜单出现在下方,菜单图标向右滑动,标签向上滑动。要关闭菜单,需要再次单击菜单图标。

var menu = (function() {

function initiate() {
//[].slice.call I used by using call but i want to to by binding and I am not able to do.
[].slice.bind(null, document.querySelectorAll('.menu')).forEach(function(element, i) {

var titleclick = el.querySelector('div.d-striker'),
striker.addEventListener('click', function(event) {
if (!open) {
el.className += ' dr-menu-open';
open = true;
}
}, false);

icon.addEventListener('click', function(event) {
if (open) {
event.stopPropagation();
open = false;
el.className = el.className.replace(/\bdr-menu-open\b/, '');
return false;
}
}, false);
}

initiate();

})();
<div class="side">
<nav class="menu">
<div class="d-striker">
<span class="d-icon dr-icon-menu"></span><a class="dr-label">Account</a>
</div>
<ul>
<li><a class="d-icon dr-icon-user" href="#">icon</a></li>
<li><a class="d-icon dr-icon-cam" href="#">Videos</a></li>

<li><a class="d-icon dr-icon-download" href="#">Downloads</a></li>
<li><a class="d-icon dr-icon-settings" href="#">Settings</a></li>
</ul>
</nav>
</div>

最佳答案

bind() 返回一个绑定(bind)函数,但您需要调用该函数来获取 forEach 所需的数组。添加括号来调用该函数。

[].slice.bind(null, document.querySelectorAll('.menu'))().forEach(function(element, i) {
^^

关于javascript - 使用 forEach 迭代 NodeList 时如何仅使用绑定(bind)而不是调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52116135/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com