このトピックでは、特別なプロジェクト (慎重に、広告)でこの問題をどのように解決したかを説明し、既製の、そして非常に柔軟なソリューションを共有します。
次の機能を実行するjQueryプラグインが作成されました。
- メッセージに情報を追加する(タイトル、説明、写真、リンク自体)。
- いいねを数えます。
- いくつかのソーシャルブロックのページ上の配置。
- アップロードされた素材にユーザーを移動します(ソーシャルネットワークはURLのハッシュをカットします)。
既知の問題
- Facebookは、いいね!の数をすぐに提供しないことがあり、Twitterは非常に大きな遅延を伴います。
- VKontakteのコールバックパラメーターを理解していないため、同じページでカスタムボタンとネイティブボタン(VKontakteのみ)を使用することはお勧めしません。
将来的には、他のサービスとの統合を実装する予定です。
使い方は?
HTML
<div class="event-container" id="event_5"> <h2> </h2> <img src="image.png" alt="" /> <div class="summary"> <p> </p> </div> <div class="likes-block"> <a href="?hash=event_5" class="like l-fb"> <i class="l-ico"></i> <span class="l-count"></span> </a> <a href="?hash=event_5" class="like l-vk"> <i class="l-ico"></i> <span class="l-count"></span> </a> <a href="?hash=event_5" class="like l-tw"> <i class="l-ico"></i> <span class="l-count"></span> </a> </div> </div>
Javascript
jQuery(document).ready(function($) { $('.like').socialButton(); $.scrollToButton('hash', 3000); });
説明
クラス(l-fb、l-tw、l-vk)を使用して、プラグインは処理するボタンを決定します。 前述したように、クラス名とキー要素セレクターをオーバーライドできます(デフォルト構成のソースのデフォルトを参照)。 これを行うには、再定義されたパラメーターを含むハッシュをsocialButton()メソッドに渡すだけです。
ここで、アドレスhttp://path.to/page.html?hash=news_123にアクセスすると、プラグインは3秒でnews_123 id-shnikを使用してマテリアルに「スクロール」します。
デフォルトでは、プラグインはヘッダーとしてh2を使用し(見つからない場合はdocument.title)、最初のp-boxの説明として、リンクとして、同様のクラスを持つリンクのhref属性の値を使用します。 ところで、絶対URLと相対URLの両方がサポートされています。
最後に
プラグインを賢く使用してください;ページ上でソーシャルで100ブロックを彫刻しないでください。 ボタン。 各ボタンは、カウンターAPIへのリクエストです。 ページに多くのマテリアルがある場合は、動的ロードを実装します。
デモはどこにありますか? ソースはどこにありますか?
ここのソース: GitHub
例は次のとおりです。
ご清聴ありがとうございました。コメント欄で質問をお待ちしています。 この記事がお役に立てば幸いです、%username%!