我正在研究Ruby on Rails,一个简单的jQuery不会执行像这样的元素:
$("header").hide();
但是,如果我将它包装到一个函数中并使用document.ready调用它,它会做正确的事情:
function myCode() {
$("header").hide();
}
$(document).ready(myCode);
为什么它不直接工作?我已经安装了gem jquery-rails,甚至在application.js文件中有// = required jquery.min.js。
感谢您的帮助!
答案 0 :(得分:-2)
如果文档尚未就绪,则尚未构建DOM。该代码运行时header
元素不存在,因此没有任何反应。要执行DOM操作,您必须等到页面完全加载,即在$(document).ready
上。