タグ付けされた質問 「javascript」

JavaScriptは、標準化されたECMAScriptプログラミング言語の方言であり、主にWebページのスクリプトに使用されます。ECMAScriptとその方言/実装に関する質問には、このタグを使用してください。JavaScript、JScriptなど(ActionScriptを除く)。

5
Javascriptを無効にする人を心配する必要がありますか?
多くの場合、新しいツールとフレームワークを選択すると、「ユーザーがJavaScriptを無効にしていると機能しません」という警告が表示されます。次に、Javascriptを使用したスライドショー、Javascriptを使用したメニュー、およびJavascriptを使用したギャラリーを確認します。おもしろいことに、オリジナルのフラッシュベースのバージョンを置き換えるためにこれらを選んだのは、それらを見る人の数が心配だったからです。 しかし、人々がJavascriptを無効にすることを心配するのは正当な心配ですか?JSが無効になっていることを念頭に置いてサイトを設計する必要がありますか?

2
これは、SEOのイメージレイジーローディングへの良いアプローチですか?
AJAXを介して読み込まれた画像、またはインデックスを作成したくない場合は、data- *属性アプローチを使用します。 <img data-src="path/to/image.jpg" class="js-lazy-load" /> Javascriptをマッピングし、データのsrcに属性のsrc属性を: <img src="path/to/image.jpg" /> ただし、HTML内の画像については、インデックスを作成する必要があります。 <a href="path/to/image.jpg" class="js-lazy-load">Image alt text here</a> JavaScriptは、アンカーを画像タグに置き換えます。 <img src="path/to/image.jpg" alt="Image alt text here" /> SEOに影響を与えることなく(願わくば)インデックス機能とページの意図を(アクセシビリティのために)保存するようです。しかし、セカンドオピニオンが大好きです。 編集:このアプローチ(画像へのリンクのあるページとインラインIMGタグのあるページ)についてのフィードバックは、ページランクに関して比較します。インラインIMGタグは、各発信リンクが全体的なページランクを損なうので、より良い結果になると思います(rel = "nofollow"が生産的でない場合を除く)。
14 seo  google  javascript 

8
css / jsファイルを自動的に結合するには何を使用すればよいですか?
ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 私はjavascriptファイルを結合するためのスプロケットを知っていますが、試していません。他のオプションにはどのようなものがあり、どのように積み重ねられますか?


4
すべてのページにメインJavaScriptをロードしていますか?または、関連するページに分割しますか?
私が持っている700kbすべてのページにロードされて解凍JSファイルを。12各ページにjavascriptファイルを配置する前に、httpリクエストを減らすために、すべてを圧縮しました1 file。 このファイルはに~130kb gzipped提供されgzipます。ただし、ローカルコンピューターでは、すべてのページに展開されて読み込まれます。これはパフォーマンスの問題ですか? firebugプロファイラーでJavaScriptのプロファイルを作成しましたが、問題は見られませんでした。私が直面している問題/幻想は、そのファイルに圧縮されたjqueryライブラリがあり、現在のページでは使用されないことがあるということです。 たとえば、jquery datatablesは200kb圧縮されており、2つのWebサイトページにのみロードされます。もう1つはjqplot、もう1つです200kb。 私は今持っている400kb上で実行されていない余分なコードの80%ページの。 すべてを1つのファイルに残す必要がありますか? jqueryライブラリを取り出し、現在のページに関連するJSのみをロードする必要がありますか?

1
CDNを使用する場合と使用しない場合
私は、いくつかの小さなgif画像を画面にロードするWebアプリケーションで作業しています。相対パスを使用しています。つまり、PHPページを提供する同じWebサーバーからロードされます。操作は瞬時であり、私はWebサーバーとは異なる大陸にいます。 静的ファイルをユーザーの近くに移動するのは素晴らしいアイデアだと考えて、これ(Cloudfront)のCDNネットワークをテストしました。ただし、これらのファイルはすべて、画面にレンダリングされるのに0.5秒ほどかかります。もちろん、絶対パスを使用する必要があります(https://xyzvf.cloufront.net/images/) 何故ですか?絶対パスは問題ですか?私は自分のサーバーへのHTTPリクエストを減らしていますが、これは良いことですが、その遅延は厄介です。CDNはこれに適していませんか?

5
headセクションで参照されるJavaScriptは、メインドキュメントと同じホスト名から提供されるべきですか?
最高のパフォーマンスを得るには、JavaScriptを静的コンテンツとして扱い、CSSファイル、画像などとともにCookieのないドメインから提供する必要があるという印象を受けました。 ただし、Googleは次のように述べています:Cookieのないドメインから早期にロードされた外部JSファイルを提供しないでください ドキュメントの先頭で参照され、ページの起動に必要なJavaScriptの場合、メインドキュメントと同じホスト名から提供される必要があります。ほとんどのブラウザは、すべてのJavaScriptファイルがダウンロード、解析、実行されるまで、他のダウンロードとレンダリングをブロックするため、この処理ポイントで追加のDNSルックアップのリスクを回避する方が良いでしょう。 だから今私は対立しています。「ページの起動に必要」が何を意味するのか明確ではありません。 通常、2つのJavaScript参照があります。ajax.googleapis.comから提供されるJQueryと、主に$(document).ready()関数にイベントハンドラーを含むmaster.jsファイルです。これはページの起動に必要ですか? 利用可能なオプション(ajax.googleapis.com、静的cookielessドメイン、元のホスト名)が与えられた場合、JavaScriptはどこに配信されるべきですか?

2
#!ありませんが
当社は、AngularJSとそのルーティングを使用して単一ページアプリケーションを開発しました。GoogleはJavaScriptを使用してサイトを適切にインデックス化しましたが、一部のページを適切にインデックス化しなかったため、HTMLのみのバージョンを開発しました。 我々は続いているAjaxのクロール仕様は、ここに掲載して持っている<meta name='fragment' content='!'>タグや正規のURLを。http://www.example.com/foo/barから取得されることを期待していますhttp://www.example.com/?_escaped_fragment_=/foo/bar。 ただし、AJAX仕様をロールすると、すべてのページに2回インデックスが作成されていることがわかりました。1回はJavaScriptバージョンとしてhttp://www.example.com/foo/bar、もう1回は新しいバージョンとしてhttp://www.example.com/#!/foo/barです。コンテンツが重複していて、サイトを誤って表示しているため、これは私たちにとって有害で​​す。 こことGoogleプロダクトフォーラムで同様の質問を探してみましたが、何も思いつきませんでした。

8
Webサイト全体をAJAX化しないのはなぜですか?
各部分の主要部分をロードするajax機能を使用してサイトを開発してはならない理由について、確かな理由はありますか(ヘッダー、ナビゲーションなどの要素が同じであると想定しています)。 確かに、サーバーがすべてのページに表示されるコンテンツを提供する必要がなく、ホストとエンドユーザーの両方にメリットがあるため、リソースの消費は少なくなります。 考慮して質問に答えてください: サイトのJavaScriptの動作は、すべてのインスタンスで適切に低下します 私の質問では、この動作を最初から実装できる新しいサイトについて話しているので、技術的に費用はかかりません。完成した製品に戻って実装するわけではありません。

2
自動化されたウェブサイトのテスト/健全性/品質
Webページのルートから開始してWebサイト全体を横断し、CSS / HTML / Javascriptファイルなどのリソースのリストを収集してから、CSS / Javascript Lint + HTML Validator + Broken Link Finderを実行するツールの構築を考えています。このようなものを構築する前に、これはすでに存在しているかどうか疑問に思いましたか? ありがとう。 私はすでにGoogleをかなり検索しましたが、あまり見つかりませんでした。
11 javascript  html  css  testing 

5
プレーンな//プレフィックス付きURLの代わりにdocument.location.protocolを使用するのはなぜですか?
たとえば、Google Analyticsはボイラープレートのdocument.location.protocolを追跡に使用します。 <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXX-X']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> の代わりに <script type="text/javascript"> var _gaq = …


4
js / cssファイルを1つのファイルに結合する必要がありますか?
YSlowとGoogleのPage Speedアドオンはどちらも、HTTPリクエストの数を減らすためにスクリプト(およびスタイル)ファイルを1つのファイルに結合することをお勧めします。スクリプトファイルがサイト全体で一貫している場合、この点が確かにわかります。ただし、サイト全体で要件が異なるWebアプリケーションの場合。 私がそれを見る方法にはいくつかのオプションがあります: サイト全体で使用されるすべてのファイルを結合し、すべてのページが同じ結合ファイルを取得します-不利な点は、スクリプトを乱雑にする未使用のコンテンツです(最初の読み込みが重い(コンポーネントスクリプトが変更された場合は再読み込みも))。 ページごとにファイルを組み合わせる-欠点は、要件が異なる各ページが異なる組み合わせファイルを取得することです(ページタイプごとに最初の読み込みが重い) 推奨の厳密な「1つのファイルのみ」の解釈を無視し、必要に応じてページを複数のファイルにロードします。キャッシングでは、一般的なケースでHTTPリクエストの数を無効にすることが期待されます。欠点は、各ページのHTTPリクエストの数です。 考え?


3
Webサイトのディレクトリ構造(js / css / imgフォルダー)
何年もの間、私のWebサイトには次のディレクトリ構造を使用しています。 <root> ->js ->jquery.js ->tooltip.js ->someplugin.js ->css ->styles.css ->someplugin.css ->images -> all website images... さまざまなサードパーティコンポーネントを使い始めるまでは、まったく問題ないように思えました。 たとえば、今日、cssファイルが配置されているのと同じディレクトリで画像を検索する日時ピッカーJavaScriptコンポーネントをダウンロードしました(cssファイルには、「url( 'calendar.png')」のようなURLが含まれています)。 だから今私は3つのオプションがあります: 1) datepicker.cssを私のcssディレクトリに入れ、その画像を配置します。私はこのオプションがあまり好きではありません。cssディレクトリ内にcssと画像ファイルの両方があり、それは奇妙です。また、cssファイルからbackground.pngにリンクする2つの異なるコンポーネントなど、同じ名前の異なるコンポーネントのファイルに出会うこともあります。これらの名前の衝突を修正する必要があります(ファイルの1つの名前を変更し、リンクを含む対応するファイルを編集します)。 2) datepicker.cssをcssディレクトリに入れ、その画像をimagesディレクトリに入れ、datepicker.cssを編集して、imagesディレクトリで画像を探します。このオプションは問題ありませんが、サードパーティのコンポーネントを編集して自分のサイト構造に合わせるために、時間をかける必要があります。ここでも、名前の衝突が発生する可能性があり(前のオプションで説明したとおり)、それらを修正する必要があります。 3) datepicker.js、datepicker.cssおよびその画像を別のディレクトリに配置します。たとえば、/ 3rdParty / datepicker /とし、作成者が意図したとおりにファイルを配置します(例:/ 3rdParty / datepicker / css / datepicker)。 .css、/ 3rdParty / datepicker / css / something.pngなど)。今、私はこのオプションが最も正しいと思い始めています。 経験豊富なWeb開発者、何をお勧めしますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.