Frage

Ich würde gerne einen Facebook -Schaltfläche "Senden" auf meiner Website verwenden (wie hier beschrieben: http://developers.facebook.com/docs/reference/plugins/send).

Standardmäßig wird die Schaltfläche Senden auf der Seite als kleine Schaltfläche angezeigt. Wenn der Benutzer auf die Schaltfläche Senden klickt, wird er zu einem viel größeren Dialogfeld geöffnet.

Was ich möchte, ist, dass das viel größere Dialogfeld beim Laden der Seite automatisch geöffnet wird, als hätte der Benutzer auf die Schaltfläche Senden geklickt.

Ich frage nicht nach etwas bösartigem. Ich möchte nur, dass der Dialog geöffnet ist, da dies auf der "Sharing" -Seite meiner Website steht, und der geöffnete Dialog würde viel besser aussehen als die kleine Send -Taste. Ich habe nicht vor, gefälschte "Sends" oder etwas anderes Spamm zu machen.

Ich habe dieses vereinfachte bisschen mit JQuery versucht, aber es funktioniert nicht ...

function expose() {
        $(".fb_button").click();
}

$(document).ready(function() {
        setTimeout(expose, 1000);
});
War es hilfreich?

Lösung

Sind FB Social -Plugins nicht in einem Iframe "eingekapselt"? Wenn dies der Fall ist, können Sie ein Ereignis nicht an die Taste binden. Und selbst wenn es nicht in einem Iframe ist, denke ich, dass Facebook versucht, Sie davon abzuhalten, automatisierte Klicks zu "erzwingen", auch wenn Ihre Absichten gut sind

Andere Tipps

Das erste Problem, das ich mit Ihrem Code sehe, ist, dass Sie sich auf die Schaltfläche als .fb_button bezeichnen, während der Code, den ich von dem von Ihnen geposteten Facebook-Entwickler-Link erhält, .fb-send ist. In Anbetracht der Tatsache, dass Sie dies selbst geändert haben, besteht das Problem darin, die Funktion von setTimeout zu rufen. Es muss im Format sein

        setTimeout("expose()", 1000);

Hoffe das funktioniert

https://developers.facebook.com/docs/reference/dialogs/send/Dies hat ein Beispiel, um den Dialog mit JavaScript zu erziehen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top