私はレールでn00bです。質問は非常に単純です。onLoadイベントのbodyタグ内でjavascript関数を呼び出す方法を知りたいです。
ビューでボディまたはヘッドタグが見つからないため、これを求めています(他の場所で生成されているようです)。
ありがとう
私はレールでn00bです。質問は非常に単純です。onLoadイベントのbodyタグ内でjavascript関数を呼び出す方法を知りたいです。
ビューでボディまたはヘッドタグが見つからないため、これを求めています(他の場所で生成されているようです)。
ありがとう
Javascript関数をonloadに関連付けるためにbodyタグを変更する必要はありません。本文でonload属性を使用する代わりに、外部Javascriptファイル内のwindow.onloadに関数を割り当てることができます。
より高度な方法があります。イベントリスナーを使用して同じことを実行し(ページの読み込み時に関数をトリガーします)、ページの読み込みの少し前に、いくつかのリスナー関数を追加したり、DOM対応の関数をトリガーしたりできます。window.onloadを設定するだけが最も簡単な方法であり、Javascriptを邪魔にならないようにします。
body
andhead
タグは通常、レイアウトの1つで定義されます。レイアウトはデフォルトでにありますapp/views/layouts
。
EricBréchemierとmtyakaはどちらも正しいです。
別のアプローチ(ビューごとに指定されるヘッダー/フッターにカスタム要素を追加する必要がある場合は、yieldブロックを使用してこのようなことを行う必要があります
これは、タイトルをページごとにオーバーライドできるようにする例ですが、同じ技術がscript
HTMLヘッドタグでのタグの設定にも適用されます。
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>