Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.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函数_Javascript_Function_Toggle - Fatal编程技术网

切换按钮不工作-使用Javascript函数

切换按钮不工作-使用Javascript函数,javascript,function,toggle,Javascript,Function,Toggle,我有一个toggle round按钮,我使用了下面的javascript来进行切换,但是它没有移动——我用一个警报测试了js文件的链接,但它确实可以工作 let touchIdN=document.getElementById('touchIdN'); 让touchyd=document.getElementById('touchyd'); touchIdN.hidden=false; touchIdY.hidden=true; 让enableTouchId=()=>{ touchIdY.hid

我有一个toggle round按钮,我使用了下面的javascript来进行切换,但是它没有移动——我用一个警报测试了js文件的链接,但它确实可以工作

let touchIdN=document.getElementById('touchIdN');
让touchyd=document.getElementById('touchyd');
touchIdN.hidden=false;
touchIdY.hidden=true;
让enableTouchId=()=>{
touchIdY.hidden=false;
touchIdN.hidden=true;
}
让disableTouchId=()=>{
touchIdY.hidden=true;
touchIdN.hidden=false;
}
touchIdN.onclick(启用touchid);
touchyd.onclick(disableTouchId);
对于隐藏在CSS上的#touchyd显示,我的html如下所示


启用触摸ID
上面的内容在我的html上的一个表中,有许多错误:

  • 您有两个切换,因为您有两个复选框
  • 通过执行
    touchIdN.onclick(enabletuchid)
    您正在调用函数,您应该在其中分配它
    touchIdN.onclick=enabletuchid
  • 最好使用
    touchIdN.addEventListener(,enableTuchid)
  • 如果在HTML
    上分配回调,则不需要在JS中添加。采取一种方法并坚持下去(HTML或JS,通常不是两者兼而有之)
  • 这是您的代码快速编辑工作,但它不是最佳的

    let touchId=document.getElementById('touchId');
    让toggleTouchId=(活动)=>{
    console.log(活动)
    如果(活动){
    //您可以启用触摸程序
    }
    否则{
    //您可以禁用触摸程序
    }
    }
    touchId.addEventListener('change',function()){
    toggleTouchId(选中此项);
    });
    
    
    启用触摸ID
    

    还可以看看他们是如何用CSS而不是JS来制作动画的。

    因为你使用的是四次点击动作。对于此类问题,最好使用调试器