更改javascript版本后onclick()失败

更改javascript版本后onclick()失败,javascript,jquery,Javascript,Jquery,我不小心将Webstorm上的Javascript版本从ECMAScript 6更改为flow 在html和javascript中定义的所有onclick()函数(如以下函数)都停止工作 <div class="just-me" onclick="helloworld();"> jquery: document.getElementbyId('test').addEventListener('click', helloWorld); $("#test").on('click',

我不小心将Webstorm上的Javascript版本从ECMAScript 6更改为flow

在html和javascript中定义的所有onclick()函数(如以下函数)都停止工作

<div class="just-me" onclick="helloworld();">
jquery:

document.getElementbyId('test').addEventListener('click', helloWorld);
$("#test").on('click', helloWorld);
我试图使用
console.log()
,但控制台中没有打印任何内容。 即使恢复到ECMA 6,问题也无法解决


编辑:
helloWorld()
已定义并在范围内。此问题发生在javascript版本更改为flow之后,在此之前一切正常。

函数
helloWorld
应该在
addEventListener()
on()
中使用之前先定义它

$("#test").click(function() { helloWorld() });

您必须在click wrapper中调用它。

它正在工作,您的
helloWorld
函数未找到。请尝试执行
$(“#测试”)。在('click',function(){console.log(“hello”)})
@axelaxel尝试过,但仍然不起作用。请看回答下面的注释,这可能是范围问题。我怀疑Flow将函数定义嵌套在另一个函数中,但它需要是全局变量。是的,您应该使用
$(document).ready
,然后定义您的事件listener@axelaxel只有在
document.getElementById()
失败的情况下才需要这样做,这与函数定义无关。问题已经更新,他们正在使用HTML中的
onclick
属性,没有
addEventListener()
on()
。这些只是解决问题的尝试。