2011-08-29 18 views
5

¿Es posible detectar cuando alguien hace clic en el botón "y antes de que ocurra la acción similar", es decir, como el evento OnSubmit JS, detecta cuándo el usuario envía el formulario antes de que sea enviado, dando la capacidad de procesar/ejecutar algún código antes de que lo haga.JS: Detecta cuando el usuario "hace clic" en el botón de me gusta de Facebook

Uso: Estoy tratando de implementar una página web 2.0 donde toda la acción sucede en una página, por lo que dependiendo de las acciones del usuario el contenido de la página cambiaría "Pero no es la meta"

Así que mi La pregunta es, ¿puedo detectar cuándo el usuario "hace clic" en el botón Me gusta para que pueda "cargar" el meta de la página actual antes de que realmente suceda la acción?

P.S, sé que no es un gran problema cargar el meta porque es menos de 1KB y no tendrá ningún efecto, sin embargo, solo tengo curiosidad si hay alguna forma de evitarlo.

Gracias.

Respuesta

6

Puede suscribirse a un evento que le notificará cuando al usuario le gusta algo; sin embargo, se activará después de la acción. Esto está documentado en: http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

Un ejemplo sería:

FB.Event.subscribe('edge.create', function(response) { alert('You liked the URL: ' + response); /* check the response here to see if it's your URL */ });

Se podría intentar interceptar la acción, pero ¿por qué quieres que esperar para agregar la meta? ¿Te refieres a los encabezados de gráficos abiertos? Facebook los raspa cada 24 horas, no para cada evento único. Además, lo más probable es que esté en contra de los términos de Facebook interceptar/alterar la acción similar, ya que interferiría con sus pautas establecidas y esperadas.

+0

Siempre pensé que cada vez que alguien como una página FaceBook raspa los encabezados og y los utiliza para construir la publicación en el muro del usuario, entonces un usuario que le gustaba la página antes de cambiar los encabezados og tendría una "publicación" diferente el usuario que le gusta después del cambio. Pero gracias a su respuesta calculé que FaceBook almacena en caché la meta información, Así que gracias por esa información, realmente me ayudó. –

+0

No hay problema. Aquí es donde encontré la información sobre el raspado: http://developers.facebook.com/docs/reference/plugins/like/ 'Facebook raspa su página cada 24 horas para asegurarse de que las propiedades estén actualizadas. La página también se raspa cuando un administrador de la página Open Graph hace clic en el botón Me gusta y cuando la URL se ingresa en el URL de Facebook Linter. Facebook observa los encabezados de caché en sus URL: verá "Caduca" y "Control de caché" en orden de preferencia. Sin embargo, incluso si especifica un tiempo más largo, Facebook raspará su página cada 24 horas. – Antonelli

+0

FB no está definido en mi sitio web, ¿qué es lo que me falta? –

Cuestiones relacionadas