微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – OnClick突然无法在Chrome上使用Google协作平台

我写了一个页面,使用带有onclick的按钮来调用函数,作为一组练习问题的一部分,并为我的学生提供答案.它自7月开始起作用,至少在9月5日星期五没有问题.今天按钮在Chrome中根本无法运行,我无法弄清楚为什么对我的生活.它们确实在IE中继续正常运行.

我发布了我能编写的最简单的代码,但下面的代码不起作用.它非常简单,说实话,我认为这很好.如果我将整个内容粘贴到JSfiddleHTML框中似乎有效,但如果我尝试分离脚本它不会做任何事情.我不知道是不是因为它被打破了,或者因为我错误地将它分开了.

我在尝试调试时遇到了麻烦,很大程度上是因为Google Sites完全将您的工作重写为自己的格式,而这种格式或多或少是不可读的,而不是由硅制成.当我加载它并尝试单击时,我得到一个例外:

Uncaught Error: shouldn't happen: ES5/3 object passed to makeDOMAccessible

但我完全没有找到那里发生的事情,或者这是否真的是问题.

我已经阅读了很多关于谷歌网站使用Javascript挑剔的内容,我不知道这个问题是关于网站还是Chrome或者这两个问题是什么,或者是什么,但这是我想要解决的问题,因为我的大部分学生和我主要使用Chrome.

下面的所有代码都会进入一个插入的HTML框中,只写FYI.

如果事实证明是重复的话,请道歉;我搜索了很长一段时间,找不到解决方案.

<html>
<body>
<button onclick="Check()">Push Me</button>

<script>
function Check() {
    alert("It worked");
}
</script>

</body>
</html>

任何有关修复我所获得的建议(如果它甚至被破坏)或以简单的方式重做它以及适用于Sites和Chrome的任何建议都将受到欢迎.提前致谢.

Here is one full page that was working previously in Chrome and is no longer.当您按下各种按钮时,它显示了表格的行.

编辑:这似乎适用于较旧版本的Chrome.我想我需要针对此问题点击Chrome论坛.

解决方法

epascarello建议使用addEventListener代替onclick事件的解决方法似乎有效.我仍然无法让我的示例中的警报窗口出于某种原因(针对站点策略?)工作,但我想要的实际功能,设置段落对象的innerHTML,正在正常工作.

这似乎是Google协作平台与Chrome v.37之间的问题.希望它在不久的将来得到解决.

以下是正常工作的等效代码示例.

<html>
<body>

<button id="AnswerButton1">Check Answer 1</button>

<p id="Answer1"></p>

<script>
    document.getElementById("AnswerButton1").addEventListener("click",function(){Answer(1);});

    function Answer(n){
        document.getElementById("Answer"+n).innerHTML = "Answer to Number 1";
    }  

</script>
</body>
</html>

感谢那些帮助过的人.

原文地址:https://www.jb51.cc/js/157011.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐