Mein Skript versucht, ein Klickereignis an ein Anker-Tag zu binden, das beim Laden der Seite in den iFrame geladen wird. Es funktioniert aber nicht. Gibt es eine Möglichkeit, jQuery dazu zu bringen, zu erkennen, wenn darauf geklickt wird? Vielen Dank
serg
Mit der Facebook-API können Sie das „Gefällt mir“-Klickereignis nicht abonnieren, aber Sie können das „Gefällt mir“-Ereignis abonnieren (wird ausgelöst, wenn die „Gefällt mir“-Aktion abgeschlossen ist):
FB.Event.subscribe('edge.create', function(response) {
// like clicked
});
aber das geht nicht in einem Tab, oder? alle anderen Lösungen wie bei facebook.com/901Tequila?v=ap4904458780 wo Sie ein Klick auf den Like-Button zur Pinnwand weiterleitet?
– SteMa
19. November 2010 um 17:42 Uhr
Diese Antwort ist nur gut, wenn ihr aufgeblähtes SDK verwendet wird, und die meisten Leute verwenden nur die iframe-Lösung.
– vsync
22. April 2013 um 21:20 Uhr
können wir auch ein anderes Ereignis bekommen. Ich habe es versucht und es gibt nur eine Antwort, wenn wir möchten,
– Strohhut
11. November 2014 um 7:34 Uhr
@StrawHat späte Antwort, hoffe aber, dass es anderen hilft. Verwenden Sie edge.remove für ein unähnliches Ereignis.
– Ionut Tatu
24. Juni 2015 um 7:20 Uhr
edge.create und edge.remove JS SDK-Ereignisse sind veraltet. Gibt es eine Alternative zu diesem @serg?
– Frostborn
4. Juli 2018 um 8:47 Uhr
Sie können JavaScript nicht verwenden, um auf Elemente innerhalb eines Iframes zuzugreifen, die nicht zur aktuellen URL gehören, da ich vermute, dass die von Ihnen verwendete Domain nicht facebook.com ist, können Sie auf diese Weise kein Ereignis an die Schaltfläche „Gefällt mir“ anhängen .
Erstellen Sie ein PHP-Skript (oder eine beliebige Sprache, die Sie verwenden), um die Quelle zu CURLen http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.MySite.Com... blahblahblah
Fügen Sie die Quelle von Facebook in Ihre HTML-Seite ein, Sie können dann mit dem Code von Facebook in JavaScript/jQuery machen, was Sie wollen.
Es ist auch höchstwahrscheinlich gegen ihre AGB/Richtlinie.
– Peter Bailey
15. September 2010 um 19:23 Uhr
Ich habe ernsthafte Zweifel, was so etwas funktionieren würde. Es würde den Like-Button spambar machen und Facebook kann das nicht zulassen.
– Dennis
15. September 2010 um 19:56 Uhr
Keine Ahnung, was ihre TOS sind, natürlich müssten Sie das überprüfen. @denis , das Kräuseln der URL führt zu demselben Ergebnis wie das direkte Anzeigen der Seite oder das Anzeigen in einem Iframe.
– Damon Skelhorn
15. September 2010 um 21:00 Uhr
Das wird niemals funktionieren. FB-Social-Plugins wie der Like-Button müssen in einem Iframe verwendet werden. Dies ist aus Sicherheitsgründen beabsichtigt. Die Social Plugins ermöglichen Aktionen, die Sitzungscookies von facebook.com verwenden, und da es sich um domänenübergreifende iFrames handelt, kann die Containerseite nicht über JavaScript mit ihnen interagieren (oder stören). Die Ausnahme hiervon ist die Verwendung von Steuerelementen, die durch domänenübergreifenden Kommunikationscode auf dem Dokument innerhalb des Iframes (der facebook.com-Seite mit der Schaltfläche „Gefällt mir“) verfügbar gemacht wurden. Sie können verwenden FB.Event.subscribe('edge.create', ...) auf diese Art.
– AndreasF
3. Oktober 2012 um 19:40 Uhr
Joby Josef
Man kann „Gefällt mir“- und „Gefällt mir nicht“-Ereignisse der Facebook-Gefällt mir-Schaltfläche mithilfe der Schaltfläche erkennen edge.create und edge.remove beziehungsweise.