这个JavaScript适用于chrome,但不适用于Safari和Firefox,我做错了什么?

时间:2015-12-15 19:11:44

标签: javascript jquery google-chrome firefox

我正在制作这个非常简单的基于网络的RPG(source available in Github),你可以在这里看到:

http://odelaria.it-zone.ma

基本上对于登录脚本,我有这个login()函数,它应该在表单提交时触发,它检索表单字段的值,并根据响应ajaxly将其发送到我的服务器端脚本在不重新加载页面的情况下将玩家记录在游戏中。它在Chrome上完美运行,但我发现在Safari和Firefox中,表单会提交并重新加载页面。我在填写表单后尝试从控制台调用login();,我收到“错误登录”消息。

您可以尝试使用这些凭据:

login : test, pass : test

login : test2, pass : 12345

请告诉我我做错了什么

3 个答案:

答案 0 :(得分:-1)

您需要将您的javascript包含(来自index.html)放在页面底部(</body>之前)

答案 1 :(得分:-2)

展望main.js我找到了以下代码:

_('f_form').addEventListener('submit', function(e){
    e.preventDefault();
    login(1);
}, true);

提供带有id属性f.e:

的提交按钮
<input id="f_form_submit" type="submit" value="Connexion">...

通过以下方式更改以上源代码:

_('f_form_submit').addEventListener('click', function(e){
    e.preventDefault();
    login(1);
}, true);

答案 2 :(得分:-2)

尝试在onsubmit事件处理程序中返回false:

<form id="f_form" method="get" onsubmit="return false">
</form>