2011-02-03 1 views
3

私は自分のウェブサイトにボタンのようなfacebookを追加しました。下のjscriptが読み込まれ、ページの残りの部分が完了するまで読み込まれない場合、遅延が発生します。また、私がファイアウォールでFacebookをブロックすると、あきらめる前に非常に長い遅延があり、それから残りのページが表示されます。私のページを最初に表示させ、次にそれをボタンのように表示させるにはどうすればよいですか? (フェイスブックに問題があるとどうなるか分かりました)また、別のページを読み込むと、ボタンのようなフェイスブックはリロードし続けます(再ロードするまでは目に見えません - 1/3秒)。ボタンは同じ場所にありますすべてのページに、上のバナーで。他のイメージはリロードされません - キャッシュされ、別のページを選択すると静的に見えます。そのスクリプトをキャッシュする方法はありますか?私は非同期ロードall.jsのため、このコードを見つけ :Facebookのようなボタンを使用してウェブサイトの読み込みを遅らせるにはどうすればよいですか?

「もう一つの方法は、それがブロックされませんので、非同期的にロードすることです

<div style="position: absolute; top:20px; right:85px; width:70px; height:25px"> 
    <script type="text/javascript" src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script> 
    <fb:like href="http://www.facebook.com/pages/somepage/somenum" layout="box_count" show_faces="false" width="50"></fb:like> 
</div> 

おかげ

UPDATE:

ことはここでは、コードですあなたのページの他の要素を読み込む: "

<div id="fb-root"></div><script>window.fbAsyncInit = function() { 
FB.init({appId: 'your app id', status: true, cookie: true, 
xfbml: true}); 
}; 
(function() { 
var e = document.createElement('script'); e.async = true; 
e.src = document.location.protocol + 
'//connect.facebook.net/en_US/all.js'; 
document.getElementById('fb-root').appendChild(e); 
}()); 
</script> 

しかし、あなたのアプリIDは何ですか?そのコードはここからですhttp://www.mohammedarif.com/?p=180

答えて

1

質問の更新で説明したように、非同期で読み込むことができます。あなたはFacebookから "アプリケーションを作成"からアプリIDを取得します。 (Googleのそれ...)

+0

ここにある:https://developers.facebook.com/docs/reference/javascript/FB.init/アプリIDはオプションです。 – roadsunknown

1

要素の読み込みはコードの上から下に起こります。非常に大きなリソースがコードの上にロードされると、ロードの合計が遅れることになります。 前にページを表示する場合は、このボタンをコードの最後に挿入します。

+0

に役立ちます希望を知っていますかキャッシュ、それは常にリロードされませんか? – harold

+0

さて、あなたは私がそれに尋ねた感覚であると答えました。それは他の問題に対処するための新しい質問を書くでしょう。 – harold

+0

私は更新を行い、未回答の質問に印を付けました。 – harold

1

ハロルドは、あなたが私のウェブサイトからコードを持って、おかげでここに再びそれを見て:)

あなたは、2つのことを求めている1は、FBのApp IDであり、他には、JavaScriptのキャッシングです。

希望すると、すでにアプリケーションIDを取得する方法があります。次の点についてお話しましょう。

スタティックリソース(JavaScript/CSS)のHTTPヘッダーの有効期限または有効期限を設定すると、ブラウザでは以前にダウンロードしたリソースを、ネットワーク経由ではなくローカルディスクからロードするように指示します。あなたはでのJScriptを維持し、ブラウザを持っているどのようにあなたがhttp://developer.yahoo.com/performance/rules.html

でウェブサイトのパフォーマンスチューニングに関連するより多くのヒントを得ることができ、.htaccessファイルで

AddOutputFilter DEFLATE css js 
ExpiresActive On 
ExpiresByType application/x-javascript A2592000 

はそれが