Rails 3.1 在页面加载之前加载脚本。如何将函数绑定到页面元素?
将此代码放入
$('#hello').click ->
alert 'hello'
vanilla Rails 3.1 应用程序的 posts.js.coffee 中不起作用。 javascript 在页面之前编译和加载,因此该函数不会绑定到其元素。有一些简单的解决方案,例如在页面上手动加载 js,而不是使用资产管道,或者使用 JQuery .live 函数,但似乎此代码应该开箱即用。我错过了什么吗?
Putting this code in
$('#hello').click ->
alert 'hello'
in posts.js.coffee in vanilla Rails 3.1 app does not work. The javascript is compiled and loaded before the page so the function isn't bound to its element. There are easy solutions, like manually loading the js on the page rather than using the asset pipeline, or using JQuery .live functions, but it seems like this code should work out of the box. Am I missing something??
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我可能会在这里指出显而易见的事情,但是你(在 jQuery 中)尝试过这个吗:
或者
这些(至少在正常情况下)应该阻止任何内部的 javascript 执行任何操作,直到 DOM 被加载。
希望这有帮助
I might be pointing out the obvious here, but have you (in jQuery) tried this:
or
These (atleast under normal circumstances) should prevent any javascript inside from doing anything until the DOM has been loaded.
Hope this helps