2009-05-21 1 views
3

私は基本的に自分のページにこれを追加する必要があります。JS:bodyタグのオンロードに相当する?

<body onload="document.getElementById('WeddingBandBuilder').focus()"> 

しかし原因私のテンプレートに、私は、タグを変更することはできません。だから、< head>タグなどのスクリプトで同等の処理を行う方法はありますか?

ありがとうございます!

答えて

-1

jQueryのかプロトタイプのようなJSライブラリを使用して、このようなもので、外部スクリプトファイルを作成します:jQueryのための

$(function() { $('#WeddingBandBuilder').focus(); }); 

プロトタイプ用:

Event.observe(window, 'load', function() { $('WeddingBandBuilder').focus(); }); 
+5

彼はJavaScriptライブラリを使用していたと言いましたか?いいえ、私はJavaScriptの質問に飽き飽きして、質問しなかったときに図書館の回答を得ました。誰かがPythonで質問をすると、人々はちょっとしたジャンゴ・クラップスをドロップしますか?また、bodyタグを編集できない場合、JavaScriptライブラリを追加することができると思われる理由と、なぜちょうど追加する必要があるのか​​、彼はこの小さなことをすることができます。 –

+0

@apphacker 1.彼はヘッドタグを編集できると言いました。 2. Python/Djangoは、これらのライブラリの魅力の大きな部分がブラウザの違いにいくつかの正気をもたらすという理由で、この状況とはあまり比較しません。 3. window.onload = whatever;頭の中で簡単に壊れるかもしれない、ライブラリを使用しないでください。 – pilsetnieks

+0

@nouveau、私はJSについてよく分かりませんが、私は主にActionscriptとPHPプログラマです。しかし、このサイトは非常にまともなサイズのeコマースサイトですが、jqueryを追加すると何かに悪影響を及ぼす可能性はありますか?ありがとう –

-2

私がチェックかもしれませんそのページに既にjQueryが含まれていれば?もしそうなら、あなたはこのような何かを行うことができます。

$(document).ready(function() { 
    $('#WeddingBandBuilder').focus(); 
}); 
+1

そこに多くの嫌悪者! – JerSchneid

8
<script> 
window.onload = function() {document.getElementById('WeddingBandBuilder').focus()}; 
</script> 
+1

既存のコードの干渉を避けるために、addLoadEvent型の構造体を使用することをお勧めします。 http://simonwillison.net/2004/May/26/addLoadEvent/ –

+0

@Josh優秀なリンク、ありがとう!それはまさに私が必要なものです! –

0

あなたは常に定義window.onloadがすでに存在しないように注意する必要があります。私は<body onload="...">またはwindow.onloadに物事を付ける唯一のものであると仮定して、何回も焼かれました。

この問題の解決方法はthis answer and commentsを参照してください。