Jquery不会触发文档.准备就绪
Jquery will not fire document.ready in rails
我无法让jquery为我的生活工作。我有两个页面,我正在工作,都需要javascript。
第一页是我的主页。它有一个简单的coffeescript,用于在文档加载
时显示警告。$(document).ready ->
alert('ready')
第二页有它自己的coffeescript,我不打算粘贴在这里。
当我加载这个文档的主页时。准备不开火。然而,如果我加载第二个页面,它的代码和这个警告被触发。
这让我相信jquery没有被加载。所以我继续测试了一些东西
- Jquery是第一个包含的javascript文件,主页的javascript文件是倒数第二个包含的(最后一个是application.js)。
- 第二页的脚本文件包含在首页的脚本文件 之前移除涡轮链接并不能修复它。
所以我决定看看我是否能让什么东西起作用。
alert 'test'
$(document).ready ->
alert('ready')
将在主页上触发'test'警报。
此外,如果我在主页的底部包含脚本标签,并放入一些jquery来防止表单提交,它会工作得很好。下面是代码:
<script type="application/javascript">
$("#formtest").submit(function(e){
e.preventDefault();
alert('No submit');
});
</script>
然而,<script type="application/javascript">
$(document).ready(function(){
alert('hello');
});
</script>
还是不行。这告诉我DOM加载的事件没有为主页触发。
编辑:显示$(document)。准备->…在第二页的javascript搞砸了这个。为什么呢?
正如我在评论中提到的,一个对我有效的解决方案是让jquery事件也以这种方式触发:
$(document).on('page:load', yourFunctionHere)
另一个解决方案是安装以下gem:
gem 'jquery-turbolinks'
相关文章:
- 在jquery文档准备好之前加载Modernizr
- 当文档准备就绪时,将数据从一个文本框复制到另一个
- Javascript if else在文档准备功能中
- 如何在文档准备函数中调用变量的click函数
- AngularJS文档准备就绪,无法正常工作
- 文档准备好与 UI Dilaog
- 在文档准备就绪之前,Javascript onload 事件和其他事件
- document.getElementById 导致 jquery 文档准备执行两次
- 执行 Js 代码,直到文档准备就绪
- 使用 jquery 在 django 文档准备就绪时运行代码
- 文档准备就绪之前可能的操作
- jQuery.browser.mobile在文档准备就绪时被遗忘
- 当文档准备就绪时,单击事件Jquery启动
- Jquery文档.准备就绪,未触发警报
- 如何在文档准备就绪时执行所需的代码
- 在文档准备就绪之前执行内联/块Javascript
- 非jquery文档准备就绪窗口.加载是最好/唯一的方法
- 一旦窗口/文档准备就绪,如何删除预加载程序
- 谷歌机器人在文档准备就绪后等待多长时间,然后拍摄网页的快照
- Android Webview - 检测 jquery 文档准备就绪