“未捕获的ReferenceError :(函数)未定义”与onfocus事件

时间:2013-10-18 12:13:09

标签: javascript jquery html scala coffeescript

我在我的模板的scala.html文件中输入此内容(我使用Play Framework):

<input type="email" name="email" id="email" onfocus="isEmailExistF();" >

和这个咖啡脚本:

  isEmailExistF = ->
    $("#email").fadeOut()

然后,当我关注输入#email时,没有任何反应,控制台报告:

Uncaught ReferenceError: isEmailExistF is not defined
  > onfocus

但如果我将onfocus替换为onblur或其他事件,则情况也一样。 CoffeeScript编译是可以的,因为我还有其他可行的咖啡脚本。我尝试使用普通的jquery来理解它是否是咖啡问题。我把这段代码嵌入代码中:

<script>
var isEmailExistF;

isEmailExistF = function() {
  return $("#email").fadeOut();
};
</script>

它有效。我哪里错了?

修改: 脚本文件包含在<head>

<script type="text/javascript" src="/assets/javascripts/main.js"></script>

和内容(从coffeescript编译)是:

(function() {
  var isEmailExistF;
  isEmailExistF = function() {
    return $("#email").fadeOut();
  };
  $(document).ready(function() {
     ...

1 个答案:

答案 0 :(得分:0)

我是在coffeescripit页面中做到的:http://coffeescript.org/

在HTML CODE中移除焦点attr:

<input type="email" name="email" id="email">

在coffeescript里面替换你的代码:

$(document).ready -> $(document).on("focus","#email",-> $(this).fadeOut())