簡體   English   中英

我已經使用 javascript 為移動設備創建了這個切換菜單,但這不起作用

[英]I have create this toggle menu for mobile device using javascript but this is not working

我已經使用 javascript 為移動設備創建了這個切換菜單,但這不起作用

const selectElement = (s) => document.querySelector(s);
selectElement(s: '.open').addEventListener('click', () => {
    selectElement(s:'nav-list').classList.add('active');
});
selectElement(s:'.close').addEventListener('click', () => {
    selectElement(s:'nav-list').classList.remove(tokens:'active');
});

看起來您的查詢參數中有一些額外的冒號。 您不需要s:除非您將參數作為 object 傳遞。

您可以刪除額外的 object 表示法:

const selectElement = (s) => document.querySelector(s);
selectElement('.open').addEventListener('click', () => {
    selectElement('nav-list').classList.add('active');
});
selectElement(close').addEventListener('click', () => {
    selectElement('nav-list').classList.remove('active');
});

或在 function selectElement的參數周圍添加括號並將其轉換為 object 解構:

const selectElement = ({ s }) => document.querySelector(s);
selectElement({ s: '.open' }).addEventListener('click', () => {
    selectElement({ s: 'nav-list' }).classList.add('active');
});
selectElement({ s: '.close' }).addEventListener('click', () => {
    selectElement({ s: 'nav-list' }).classList.remove('active');
});

我推薦第一個選項,因為使用 function 參數的對象只有在您嘗試跟蹤多個參數時才真正有幫助。

無論哪種情況,您都想刪除tokens:classList.remove() function

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM