2

Kik 共有ボタンには data-url 属性があり、ドキュメントには URL をサポートする共有ボタン ビルダーさえあることに気付きましたが、私のテストでは data-url 属性は無視され、代わりに常に現在の URL が共有されます。

次に例を示します。

<a class="kik-button kik-color-lg" 
   data-url="http://example.com/something" 
   data-title="Something" 
   data-description="Something" 
   data-pic="http://example.com/example.png">
</a>

ページhttp://example.comにいる場合- 共有ボタンを押すと、http://example.com/something ではなく http://example.com に移動するカードが共有ます

また、ネイティブで使用する場合、実際には「url」項目がないことに気付き、kik.send実際に送信されたはずのものに混乱を招きました。

別の半関連の問題は、kik 以外のデバイスで共有ボタンを非表示にしようとしているため、通常どおりサイトを使用できますkik.enabledが、ユーザーが最初にページを読み込んだときにのみ当てはまります。別のページkik.enabledが突然 false になり、共有ボタンが消えます。どうしてこれなの?

(注: kik.enabled は、Chrome で Kik 開発者ツールを使用すると完全に正常に動作します。@kik devs。開発者ツールが Kik アプリに近ければいいのにと思います。いくつかのアプリを作成しましたが、通常はブラウザーで正常に動作します。 Kik ツールを使用しますが、Kik 自体では完全に壊れています)

4

1 に答える 1

-1

kik -share-button スクリプトは、 の値をパラメーターdata-urlとしてに送信しようとします。urlkik.send()

function setupShareButton(link) {
    link.style.display = "inline-block";
    link.setAttribute("title", "Share this on Kik!");
    link.addEventListener("click", function(event) {
        var link = this,
            data = {},
            n, m, i, h;
        n = link.getAttribute("data-title");
        if (n) {
            data.title = n
        } else {
            data.title = document.title
        }
        m = link.getAttribute("data-description");
        if (m) {
            data.text = m
        }
        i = link.getAttribute("data-pic");
        if (i) {
            data.pic = i
        }
        h = link.getAttribute("data-url");
        if (h) {
            data.url = h
        }
        kik.send(data);
        // don't follow the link normally unless a previous command threw an error
        return false
    })
}

しかし、kik.send()urlのドキュメントには、パラメーターについて言及されていません。これは、共有ボタン スクリプトのエラーである可能性があります。無効なパラメーター名は、現在のページの URL を送信するという既定の動作になる可能性があります。多分それはdataパラメータの一部であることを意図しています:

kik.send({
  title: '...',
  text: '...',
  data: {url: '...'}
})

その場合、共有ボタン スクリプトを少し変更するだけで、正しい機能が生成される可能性があります。

于 2015-03-16T04:32:56.663 に答える