在RAILS中的<body onLoad = function()>中插入javascript调用

我在轨道n00b。 这个问题很简单,我想知道如何在onLoad事件的body标签内部调用javascript函数。

我在问这是因为在视图中我找不到任何身体或头标签(就像他们在其他地方产生的一样)。

谢谢


您不需要修改body标签以将Javascript函数与onload相关联。 不用在body上使用onload属性,你可以在外部Javascript文件中将函数赋值给window.onload。

还有更高级的方法,使用事件监听器来做同样的事情(在页面加载时触发函数),这可以在页面加载之前稍微/部分时间在DOM准备好的基础上添加多个监听器函数或触发函数。 只要设置window.onload是最简单的方法,并将保持你的Javascript不显眼。


bodyhead标签通常会在其中一种布局中定义。 布局默认位于app/views/layouts


EricBréchemier和michaaka都是对的。

另一种方法(如果您需要将自定义元素添加到基于每个视图指定的页眉/页脚中,则需要使用yield块

下面是一个允许标题在每页基础上被覆盖的例子,但是相同的技术适用于在HTML头标签中设置script标签。

app/views/layouts/posts_layout.html.erb

<html>
  <head>
    <title><%= yield(:page_title) || "My awesome site"%></title>
  </head>
  <body><%= yield %> </body>
</html>

app/views/posts/index.html.erb

<%= content_for :page_title, "post listing" %>
<h1>Here are your posts...</h1>
链接地址: http://www.djcxy.com/p/71233.html

上一篇: Insert javascript call inside <body onLoad=function()> in RAILS

下一篇: How to check if DOM is ready without a framework?