2011-07-27 17 views
0

ここでは、私はここを見てきましたが、ほとんどの場合、エスケープの問題があると言います。私はグーグルを見て、ほとんどの例は、1つのdivのテキストを別のものに置き換えるなどです。ここでは、 "mainMidSec"のデフォルトの内容を.jsのif文に置き換えたいとします。innerHTML文字列を設定すると、構文エラーが発生します

私は、モバイルサイトで何かをテストしようとしていますが、構文エラーが出ています。私はそれが引用符等と関係していることはほぼ肯定的です...私は外側の二重内側の一重引用符を試して、それ以外の方法とそれを取っていない。私は喜んでと謙虚に受け入れるだろう

<script type="text/javascript"> 

var screenW = document.getElementById('mainMidSec'); 

if ((screen.width<=800) && (screen.height<=800)) 
{ 

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg"> 
    <source src="videos/mp4-video-versions/2010reel_MP4.mp4"> 
    <p> Your current web browser is out of date . Please update it wont you...pretty please?</p> 
</video>' 

} 

</script> 

任意のアイデア/提案/知識爆弾君たち私にドロップします。ここでは

は、コードがあります!

+0

構文エラーの種類を? –

+0

JavaScriptが初めての場合は、JavaScriptのフレームワークを調べることをお勧めします。非常にポピュラーなものはjquery.com – Alfred

+0

Alfredに感謝します。私は新しい.JSと私はそれを理解しているが、私はスーパーnoobです!私は基本を学びたいと思っていましたが、私はフレームワークに行きました。 – somdow

答えて

5

複数の行にまたがる文字列を分割することはできません。

単一の行に文字列を入れてください:

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg"><source src="videos/mp4-video-versions/2010reel_MP4.mp4"><p> Your current web browser is out of date . Please update it wont you...pretty please?</p></video>'; 

、または各ラインに別々の文字列を作る:JavaScriptで

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg">' + 
    '<source src="videos/mp4-video-versions/2010reel_MP4.mp4">' + 
    '<p> Your current web browser is out of date . Please update it wont you...pretty please?</p>' + 
    '</video>'; 
2

を、あなたは、文字列内の改行を持つことができません。試してみてください:

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg"><source src="videos/mp4-video-versions/2010reel_MP4.mp4"> <p> Your current web browser is out of date . Please update it wont you...pretty please?</p></video>' 

をまた、モバイルデバイス用の代替レイアウトに対処するための推奨方法である、CSS Media Queriesを見てみましょう。

+0

短い話ですが、メインサイトには巨大なフラッシュファイルがあり、画面サイズに応じてサーバー上の小さいものに置き換えたいからです。メディアのクエリもこれを行いますか?ありがとう – somdow

+0

いいえ私はそれを行う最善の方法は、PHP、ASP、または何でも、サーバー側だと思う。 htmlとjavascriptだけを使用する必要がある場合は、jsを使用する必要があります。私はこのケースでは、ブラウザが置換完了前に大きなファイルの要求を開始するかもしれないと恐れています。 – bfavaretto

1

変更:

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg"> 
<source src="videos/mp4-video-versions/2010reel_MP4.mp4"> 
<p> Your current web browser is out of date . Please update it wont you...pretty please?</p> 

へ:

screenW.innerHTML = '<video width="500" height="400" controls poster="imgs/vidPosterImgSMALLER.jpg"> ' + 
'<source src="videos/mp4-video-versions/2010reel_MP4.mp4"> ' + 
'<p> Your current web browser is out of date . Please update it wont you...pretty please?</p> ' + 

''

関連する問題