我可以从coffeescript文件调用Javascript函数吗?
我正在尝试从Coffeescript文件中调用javascript函数,用于我的我可以从coffeescript文件调用Javascript函数吗?,javascript,jquery,ruby-on-rails,coffeescript,Javascript,Jquery,Ruby On Rails,Coffeescript,我正在尝试从Coffeescript文件中调用javascript函数,用于我的$(document).ready(),但它从未被调用 我想调用的函数来自一个外部源,我已经在我的html head元素中包含了该源,就在包含我的coffeescript文件之前,如下所示: <script src="external.js"></script> <%= javascript_include_tag params[:controller], 'data-turbolink
$(document).ready()
,但它从未被调用
我想调用的函数来自一个外部源,我已经在我的html head元素中包含了该源,就在包含我的coffeescript文件之前,如下所示:
<script src="external.js"></script>
<%= javascript_include_tag params[:controller], 'data-turbolinks-track' => true %>
这是正确的方法吗?我可以在Chrome中看到我的脚本被编译成javascript,我可以在inspector的网络选项卡中看到它
我使用的是Rails 4,这是我的application.js
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require_tree .
编辑:
如果我用alert(“…”)替换方法调用代码>它可以工作,如果我在$(document.ready()
中使用javascript调用我的javascript方法,它就可以工作
编辑2:
下面是我真正的javascript函数:
var ready = function () {
$('pre code').each(function (i, e) {
hljs.highlightBlock(e)
});
};
$(document).ready(ready);
我这样做解决了问题:
highlight = ->
$("pre code").each (i, e) ->
hljs.highlightBlock(e)
$(document).on 'ready page:load', ->
highlight()
这与您认为的不同:
$ -> ready
在JavaScript中,即:
$(function() {
return ready;
});
您的问题是justready
只是对函数的引用,而不像Ruby中那样是函数调用。要调用函数,必须说ready()
,函数调用括号仅在使用参数调用函数时是可选的:fx
和f(x)
是相同的,但是f
和f()
是不同的
我想你应该说:
$ -> ready()
甚至:
$ ready # same as $(ready)
这与您认为的不同:
$ -> ready
在JavaScript中,即:
$(function() {
return ready;
});
您的问题是justready
只是对函数的引用,而不像Ruby中那样是函数调用。要调用函数,必须说ready()
,函数调用括号仅在使用参数调用函数时是可选的:fx
和f(x)
是相同的,但是f
和f()
是不同的
我想你应该说:
$ -> ready()
甚至:
$ ready # same as $(ready)
这与您认为的不同:
$ -> ready
在JavaScript中,即:
$(function() {
return ready;
});
您的问题是justready
只是对函数的引用,而不像Ruby中那样是函数调用。要调用函数,必须说ready()
,函数调用括号仅在使用参数调用函数时是可选的:fx
和f(x)
是相同的,但是f
和f()
是不同的
我想你应该说:
$ -> ready()
甚至:
$ ready # same as $(ready)
这与您认为的不同:
$ -> ready
在JavaScript中,即:
$(function() {
return ready;
});
您的问题是justready
只是对函数的引用,而不像Ruby中那样是函数调用。要调用函数,必须说ready()
,函数调用括号仅在使用参数调用函数时是可选的:fx
和f(x)
是相同的,但是f
和f()
是不同的
我想你应该说:
$ -> ready()
甚至:
$ ready # same as $(ready)
我想它可能是你在coffeescript文件中的函数?如果alert起作用,但不是方法调用,那么它可能是您的方法我添加了我真正的javascript函数,您能告诉我如何在coffeescript中实现它吗?我想它可能是您在coffeescript文件中的函数?如果alert起作用,但不是方法调用,那么它可能是您的方法我添加了我真正的javascript函数,您能告诉我如何在coffeescript中实现它吗?我想它可能是您在coffeescript文件中的函数?如果alert起作用,但不是方法调用,那么它可能是您的方法我添加了我真正的javascript函数,您能告诉我如何在coffeescript中实现它吗?我想它可能是您在coffeescript文件中的函数?如果alert起作用但不是方法调用,则可能是您的方法我添加了真正的javascript函数,您能告诉我如何在coffeescript中实现它吗?谢谢,现在调用了我的函数,但由于错误,它无法编译。如果你能帮我弄清楚如何在coffeescript中实现它,我已经在我的原始帖子中包含了我真正的javascript函数。你是在我不在的时候弄明白的,对吗?您应该可以只说$(文档)。在“就绪页面:加载”上,也可以说“就绪”
。谢谢,现在调用了我的函数,但由于错误,它无法编译。如果你能帮我弄清楚如何在coffeescript中实现它,我已经在我的原始帖子中包含了我真正的javascript函数。你是在我不在的时候弄明白的,对吗?您应该可以只说$(文档)。在“就绪页面:加载”上,也可以说“就绪”
。谢谢,现在调用了我的函数,但由于错误,它无法编译。如果你能帮我弄清楚如何在coffeescript中实现它,我已经在我的原始帖子中包含了我真正的javascript函数。你是在我不在的时候弄明白的,对吗?您应该可以只说$(文档)。在“就绪页面:加载”上,也可以说“就绪”
。谢谢,现在调用了我的函数,但由于错误,它无法编译。如果你能帮我弄清楚如何在coffeescript中实现它,我已经在我的原始帖子中包含了我真正的javascript函数。你是在我不在的时候弄明白的,对吗?您应该能够说:<代码>$(文档)。在“就绪页面:加载”上,也可以说“就绪”
。