繁体   English   中英

Javascript function 发布到 Github 时未定义

[英]Javascript function not defined when published to Github

我创建了一个 function 应该使我的 div 在点击时可见。 它在本地运行良好,但是当我在 Github 页面上发布我的项目时,出现错误“未捕获的ReferenceError:btnClick 未在 HTMLElement.onclick ((index):51) 处定义”。 这是脚本代码:

document.getElementById('btn-share').onclick = function btnClick() {

  let comma = document.getElementById('comm-share');
  let tri = document.getElementById('trio');

  if (comma.style.visibility === "hidden") {

    comma.style.visibility = 'visible';
    tri.style.visibility = 'visible';
  }
  else {
    comma.style.visibility = 'hidden';
    tri.style.visibility = 'hidden';
  }
};

图片: HTML

您正在做的是分配 .onclick ,同时制作另一个名为btnClick()的 function 。 有几种方法可以修复您的代码:

 document.getElementById('btn-share').onclick = function () { let comma = document.getElementById('comm-share'); let tri = document.getElementById('trio'); if (comma.style.visibility === "hidden") { comma.style.visibility = 'visible'; tri.style.visibility = 'visible'; } else { comma.style.visibility = 'hidden'; tri.style.visibility = 'hidden'; } };
这不会产生任何btnClick() ,而只是将 function 分配给onclick 如果您想在需要时调用btnClick() ,这将是最佳选择(好吧,您可以使用 element.onclick)。

 function btnClick() { let comma = document.getElementById('comm-share'); let tri = document.getElementById('trio'); if (comma.style.visibility === "hidden") { comma.style.visibility = 'visible'; tri.style.visibility = 'visible'; } else { comma.style.visibility = 'hidden'; tri.style.visibility = 'hidden'; } }; document.getElementById('btn-share').onclick = btnClick;

上面将其分配给 function。

 document.getElementById('btn-share').addEventListener("click", function() { let comma = document.getElementById('comm-share'); let tri = document.getElementById('trio'); if (comma.style.visibility === "hidden") { comma.style.visibility = 'visible'; tri.style.visibility = 'visible'; } else { comma.style.visibility = 'hidden'; tri.style.visibility = 'hidden'; } });

最后一个使用 .addEventListener .addEventListener() function 将 function 分配给onclick

你想用什么是你的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM