-1

標準の Facebook の「いいね」コードを使用した独自の「いいね」ボタンを備えた、250 の異なるアイテムを含む Web ページがあります。

div class="fb-like" data-href="http://www.mywebpage.com/myproductpage" data-send="false" data-layout="button_count" data-width="80" data-show-faces="false" etc.

このページは、Android デバイスだけでなく、すべてのコンピューター プラットフォームのすべてのブラウザーで正常に動作します。残念ながら、個別の Facebook Like ボタンはすべて、iPad と iPhone でメモリの問題を引き起こすようであり、これらのデバイスのページで Safari がクラッシュします。

各いいねボタンの div class="fb-like" などの部分は、何千ものページで iPad を満足させるために簡単に変更できるものではありませんが、これらのページの上部に表示される標準の Facebook コードは簡単に削除できます。これにより、いいねボタンが機能します。私がやりたいのは、各ページの上部にある Facebook コードを、これらの「いいねボタン」のそれぞれのデータを取得し、少し異なる機能の独自のボタンを生成する独自の HTML に置き換えることです。(おそらく、それぞれが個別のページにリンクし、そのページが iOS デバイスに読み込まれると共有ページになります。) 唯一の問題は、これらの各項目を引き起こすために必要な HTML/CSS/Javascript を完全に把握していないことです。 class="fb-like" を使用して、何かをトリガーしてその中にコンテンツを生成します。

ページの class="fb-like" 部分のデータにアクセスし、そこに自分のアイテムを配置する方法を簡単に説明してもらえますか? その後、iPad/iPhone で何か別のことを動的に行うことができるので、クラッシュしないようにすることができます。おそらく、いいねボタンをページ リンクの共有に変えるだけです。

そのための独自の Javascript/HTML コードを問題なく記述できますが、「fb のような」各 DIV のデータ値にアクセスする方法と、生成されたコードをトリガーしてそのページに表示する方法をある程度理解している必要があります。それらの250の場所のそれぞれで。

私のページの class="fb-like" 部分内のデータにアクセスし、その中で何かを生成する例をいただければ幸いです。非常に単純な例でさえ、そこから必要なものをプログラムする方法を理解するには十分なはずです。誰かが私が始めるのを手伝ってもらえますか?

4

1 に答える 1

1

Muhammed の提案に基づいて、このサイトで上記の参照された投稿を見つけたので、うまくいくと思われる自分用の小さな例を作成しました。この例では、各 Like ボタンの data-href にアクセスし、その場所に配置します。これで、iOS 用に変更した残りのページをプログラミングするのに十分なはずです。Facebookのようなボタンクラスに合うように、上記のページからわずかに変更されたコードを次に示します。

<SCRIPT>
function replaceContentInContainer(matchClass) {
var elems = document.getElementsByTagName('*'), i;
for (i in elems) {
    if((' ' + elems[i].className + ' ').indexOf(' ' + matchClass + ' ')
            > -1) {
        elems[i].innerHTML = elems[i].getAttribute('data-href');
    }
}
}
replaceContentInContainer('fb-like');
</SCRIPT>
于 2013-08-18T20:48:02.427 に答える