- ベストアンサー
アンドロイド携帯だとJAVAスクリプトが見れない
教えて下さい! いわた接骨院のHPを作ってるものです。 アンドロイド携帯で http://iwata-sekkotsu.sakura.ne.jp/ こちらのサイトのトップページのジャバスクを使った動画が動かなくて、アンドロイド携帯ですと見れないのです。 どうしたらアンドロイド携帯で見れるようになるのか教えて下さい。 HTMLでどこを直せば動くようになるのか教えて欲しいです。 宜しくお願いします。
- みんなの回答 (10)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 >それと… >XHTML1.0 では XML宣言をすることが強く求められています。 >とか ><iframe> に不明な属性 `allowTransparency` が指定されています。 >とかは気にしなくてもいいんですかね?! XML宣言はチェッカーの通りにしてみてください。 allowTransparencyについてはここを参考にしてみてください。 http://www.tagindex.com/html_tag/frame/iframe_allowtransparency.html >あと、大きな問題がもう一つ増えてしまったぁぁぁぁ。 私の端末も2.3なのでその現象はわかりませんでした。 いろいろ試せば直せるかもしれませんが、確認できる環境がないのでこれに関しては私も手助けが難しいです。
その他の回答 (9)
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 1.チェッカの説明を見た限りこれは問題無いはずです。気になるのであれば<a href="#top">を<a href="#header">にして)<a name="top" id="top"></a>を削除しても同じような動きはできると思います。 2.<iframe title="表示するフレーム内のタイトル"> 3.これはチェッカーの判断ミスでJavaScriptとしての>を勘違いしています。 JavaScript内では>はこのまま>で変更してはダメです。 4.<body onload="Telop()">です。もしかして<body onload="telop()">に変更しましたか? 全部を小文字にするのではなくonloadのみです。Telop()はJavaScriptの関数名ですがこれは大文字小文字が別扱いです。 5.</body>に対応する・・・ これは何度も指摘している話です。<body onLoad="Telop()" />といきなり開始タグが閉じているため、開始タグが無いと言われています。 <body onload="Telop()">にすればこのエラーはなくなると思います。 <div>についてはHTML用のエディターを使うと終了していないタグなんか表示したりしてくれますのでそういったものを利用すると良いです。 何が足りていないかというと先頭の<div id="container">に対応する</div>が無いので一番後ろ(</body>の手前)に</div>を入れればOKのはずです。 全部が全部HTMLチェッカーの通りにする必要があるかどうかは微妙なところですが、重要なところを押さえておけば良いと思います。
補足
わ~い。なおりました。やっと「ふつうです」の花丸がつきました(*^_^*) 有難うございます。 でも… <body onload="telop()">にはしてなく <body onload="Telop()">にしましたがダメでした…。 onLoadをonloadにすると(Lをlにする(大文字のエルを小文字のエルにする))とテロップが流れなくなってしまいます。 これは直しようがないっぽいのかなぁ…。 それと… XHTML1.0 では XML宣言をすることが強く求められています。 とか <iframe> に不明な属性 `allowTransparency` が指定されています。 とかは気にしなくてもいいんですかね?! あと、大きな問題がもう一つ増えてしまったぁぁぁぁ。 昨日ドモコショップに行きアンドロイド携帯バージョン4.0(因みにGALAXY NEXUS SC-04D)で接骨院のサイトを見た所、テロップ部分が飛び出してて崩れていました。 下記参照 http://f.hatena.ne.jp/takako1204/20120218171840 (思わず写メ撮った) アンドロイド2.3ですとちゃんと見れたんだけど…。 これも修正しとかないとまずいなぁ~って。 でも、どこをなおすのかわからないです。。。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 いろいろ作っていくうちに覚えていけば良いのです。 数をこなせば「こうするときはこうすればいい」とかつかめるようになってきます。 そして調べてみてもわからない時にうまく質問サイトを利用すれば解決していけると思います。 私よりも詳しい人はたくさんいますし、頑張ってください。
補足
色々本当に有難うございます。 チェッカーの項目で沢山の間違いがあるうちの、いくつかで、直し方がわからない部分があります。 教えて下さい。 (1)<a name="top" id="top"></a>で <a></a>この間に文字を入れて文字が見えないようにする指定のやり方? (2)<iframe> には title 属性でどこにどうやってこの属性を入れていけばOKなのか? (3)メタ文字 `>` は `>` と書かなければなりません。 ってなってますが`>` を入れたらJavaが見えなくなった… (4)<body> の属性 `onLoad` は小文字で書かなければなりません 小文字にしたらテロップの文字が消えた!というか消えてしまった…。 (5)【</body> に対応する開始タグ <body> が見つかりません。】 や 【51行目の <div> に対応する終了タグ </div> が見つかりません】 はちゃんと開始や終了タグを入れてるんだけど…((+_+)) 他にもわからないのはあるけれど、私の中ではこの(1)~(5)番が特に直してみたいと思ってますが、 やり方がどーもわからないです。。。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 </br>のみですとxml的には終了タグのみになっているのでダメです。 <br>に関しては終了タグが無いので(空要素のタグ、他にはimgやhr等)</br>は使わないです。 <br></br>と書くことはxml的にはOKですが、ブラウザがどう判断するかはわかりません。 >改行はされてるんだけど・・・どこをなおしていいのかわからないです。 文法的には間違えているけどブラウザが気を利かせて改行してくれています。 その気を利かせる機能が無くなると、意図しない表示になってしまいますので正しく書いておくと良いです。 <br />これが正しいです。 xhtmlで記述する場合はかならず開始タグと終了タグがあると思って下さい。 (前述の通り空要素の場合は<hr />です)
補足
初心者に凄くわかりやすく書いてくれ有難うございます。 あ~わたし・・・<br />を逆にしてました。アホだ・・・。。。 チェッカーで沢山間違えているのでちょっとずづ直していこうと思ってます。 ホントに色々助かりました。 これからも教えて下さい・・・宜しくお願いしますって言いたいところです(笑)が・・・これはGOOでしたね(笑) 頑張らないと・・・(悲)
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 アンドロイド端末にてアクセスしたところ気にされている画像のエフェクトとお知らせが動いていることを確認できました。 まだ<body />になっていたり、</br>があったりしていますが、とりあえず表示されています。 ほぼほぼ大丈夫だと思いますが、そのあたりを修正しておくと問題が起きにくいと思います。
補足
ホントですか!!! スマホで確認できないのがアレですが、有難うございます! <body />や他の部分もなおしていきたいと思います。 が聞きたいんですが </br>は何がいけないんでしょうか? 改行はされてるんだけど・・・どこをなおしていいのかわからないです。 <br>ホニャララ</br>ってやるんでしたっけ? すみません・・・多分三ヶ月学校に通った時に習ってますが忘れました。。。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 店舗のWebページを作成しているのだから初心者という言葉はな免罪符になりませんよ。 まずはアドバイス通り、いきなり終了してはいけないタグを直してください。 (<script />だったり<body />であったり) アンドロイドで見た限り、JavaScriptの内容がそのまま表示されているところがあったりしますのでまず正常に動いていないと思います。 先のHTMLチェッカーが出力したエラー部分を直してください。 JavaScritpが正常に動く、動かない以前の問題です。 そこを修正したらJavaScriptが正常に動くかどうか見ていきましょう。
お礼
本日時間が出来たので直してみました。 が、チェッカーの指示にそってやってはみましたが、ジャバが動かなくなったりし、指示通りにやると上手くいかなくなりました。 例えば 8: line 5: 空要素タグ <meta> は <meta /> として閉じなければなりません。 → 解説 38 1: line 9: 空要素タグは <meta /> と書くようにしましょう。 → 解説 41 9: line 51: <body> の属性 `onLoad` は小文字で書かなければなりません。 → 解説 78 とか他にもありますが↑これを↑やると変数定義のテロップが流れなくなったり…してしまいます。 あと…下記も直しましたがテロップが消えてしまったりしてしまいました。 1: line 119: <form> の属性 `name` はあまり薦められない属性です。id 属性を使いましょう。 → 解説 81 1: line 119: <form> には name 属性と id 属性の両方を指定するようにしましょう。 → 解説 222 他にもある程度わかる範囲で直してみました。が… 難しいです(泣)
補足
有難うございます。 まずは自宅に帰ってから、かつ土日を使ってわかる範囲内で直してみたいと思います。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 JavaScriptがどうのこうのではなく、まずはタグを全て正しくしたほうが良いです。 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" /></script> これなんか、jqueryがきちんと読み込まれているかも怪しいです。 細かい構文の間違いは最終的に直せば良いと思いますが、まずは開始タグでいきなり閉じている部分等は直したほうが良いです。 その上でアップロードしてもらえれば確認してみます。
お礼
No.5 のお礼入力の続きです。 一応修正後、アップしましたので宜しくお願いします。
補足
本当に有難うございます。 しかしどの様にjqueryが読み込まれているのかを確認する手段がわからないです。 一応あのサイトは月に2~3回位は更新をしています。 HTML初心者物で。。。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 サーバにあがっているものが最新かどうかはわかりませんが、現状アクセスしてよくよくソースを見ると <body onLoad="Telop()" /> これも間違い <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" /></script> これも間違い <script language="JavaScript" /> //変数定義 これも間違い と、たくさん記述方法に間違いがあります。 http://htmllint.itc.keio.ac.jp/htmllint/htmllint.html にてチェックしてみてください。 ブラウザによっては勝手に解釈して表示してくれますが、厳密に言うと表示できないHTMLです。
補足
有難うございます。 チェックしましたが結構間違ってる・・・。 でもジャバスクではどこをどうやって直していいのかわからないです。。。。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 直したのをアップしてもらえれば確認できますよ。 表示してみたらタグがそのまま表示されていたので先ほどの回答をしました。
お礼
遅くなりました。 確認しましたが、タグは閉じられてなかったです。 下記の様になってました。 <!-- 普通のクロスフェード --> <div id="slidedisp" style="width:700px; height:260px; margin-bottom: 20px"></div> <script type="text/javascript"> $('#slidedisp').crossSlide({ sleep: 2, fade: 1 },[ { src: 'images/bed2.jpg' }, { src: 'images/reception.jpg' }, { src: 'images/waiting_room.jpg' } ]); </script> <!-- スライドするクロスフェード --> <div id="slideslider" style="width:900px; height:260px; margin-bottom: 20px"></div> <script type="text/javascript"> $('#slideslider').crossSlide({ speed: 60, fade: 1 },[ { src: 'images/waiting_room.jpg', dir: 'up' }, { src: 'images/reception.jpg', dir: 'down' }, { src: 'images/bed.jpg', dir: 'left' } ]); </script> <!-- 動きのあるクロスフェード --> <div id="slidemove" style="width:700px; height:260px; margin-bottom: 20px"></div> <script type="text/javascript"> $('#slidemove').crossSlide({ fade: 1 },[ { src: 'images/bed.jpg',from: 'center center 6.0x', to: 'center center 0.5x', time: 1.0 }, { src: 'images/reception.jpg',from: 'top left 1.0x', to: 'top right 1.0x', time: 0.05 }, { src: 'images/waiting_room.jpg',from: 'top left 1.0x', to: 'bottom right 5.0x', time: 5.0 } ]); </script> </body> </html> すみません…度々宜しくお願いします。
補足
わかりました。有難うございます。 今日帰ったら、アップしてみまます。 宜しくお願いします。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 試したわけではないのですがここがおかしいと思います。 <script type="text/javascript" /> $('#slideslider').crossSlide({ speed: 60, fade: 1 },[ { src: 'images/waiting_room.jpg', dir: 'up' }, { src: 'images/reception.jpg', dir: 'down' }, { src: 'images/bed.jpg', dir: 'left' } ]); </script> 最初のタグがいきなり閉じられてしまっています。 以下のように修正してみてください。 (それでも動かなかったらすいません) <script type="text/javascript"> $('#slideslider').crossSlide({ speed: 60, fade: 1 },[ { src: 'images/waiting_room.jpg', dir: 'up' }, { src: 'images/reception.jpg', dir: 'down' }, { src: 'images/bed.jpg', dir: 'left' } ]); </script>
補足
有難うございます。 試してみますが、アンドロイド携帯を持っておらず<m(__)m>ドコモショップに行って試してみます(苦笑)
補足
有難うございます。 アンドロイド4.0に関しては他で聞いてみます。 色々と本当に有難うございました。