<atitle="send to Facebook"href="http://www.facebook.com/sharer.php?s=100&p[title]=YOUR_TITLE&p[summary]=YOUR_SUMMARY&p[url]=YOUR_URL&p[images][0]=YOUR_IMAGE_TO_SHARE_OBJECT"target="_blank"><span><imgwidth="14"height="14"src="'icons/fb.gif"alt="Facebook"/> Facebook
</span></a>
¿Sabes cómo hacer que este enlace se abra en una ventana emergente o modal? Simplemente no puedo encontrar un método que funcione, no es tan simple como usar un código genérico de ventana emergente ...
tvgemert
1
Más eficaz que la respuesta de arriba.
Mateng
29
@tvgemert: Trate <a class="facebook" target="_blank" onclick="return !window.open(this.href, 'Facebook', 'width=640,height=300')" href="http://www.facebook.com/sharer/sharer.php?u=YOUR_URL">Facebook</a>etc.
Mateng
Perfecto, ¡esto también funciona para las URL hashbang!
dvtoever
73
Esto ya no funciona.
Chuck Le Butt
30
Para dar parámetros personalizados a facebook compartir su mejor dar sólo el enlace de facebook y recibe su nombre + descripción + Imagen de forma automática desde la página que está compartiendo. Para "ayudar" a la API de Facebook a encontrar esas cosas, puede poner las siguientes cosas en el encabezado de la página que está compartiendo:
Si las URL son idénticas, ¿Facebook está almacenando en caché los datos de las metapropiedades? ¿O puedo introducir, por ejemplo, datos POST individuales con cada vista de página?
Mateng
No entendí lo que quieres decir con eso.
ShayanK
Acabo de encontrarme con esto. Tengo un código de Me gusta / Compartir en mi página de inicio que está configurado para Me gusta / Compartir la página de Facebook asociada con mi negocio. Parece ignorar las metaetiquetas de Facebook que tengo en la página. ¿Alguien se encuentra con este problema?
Chris Hawkins
1
Parece que este método ya no funciona. Creo que la única forma de lograr un botón para compartir de Facebook personalizado (con su propio texto, título e imagen) es usar el SDK de Facebook.
Ryan Coolwebs
Gran solución, para hacerlo también moderno, en if( window.open(.....) ) event.preventDefault();lugar de simplemente `devolver falso; ˙! - de esa manera, solo evita el comportamiento predeterminado (enlace abierto) cuando se abre la ventana - proporciona un respaldo cuando no era ...
jave.web
12
utilice esta función derivada del enlace proporcionado por IJas
function openFbPopUp() {
var fburl = '';
var fbimgurl = 'http://';
var fbtitle = 'Your title';
var fbsummary = "your description";
var sharerURL = "http://www.facebook.com/sharer/sharer.php?s=100&p[url]=" + encodeURI(fburl) + "&p[images][0]=" + encodeURI(fbimgurl) + "&p[title]=" + encodeURI(fbtitle) + "&p[summary]=" + encodeURI(fbsummary);
window.open(
sharerURL,
'facebook-share-dialog',
'width=626,height=436');
return false;
}
O también puede usar la última función FB.ui si usa FB JavaScript SDK para una función de devolución de llamada más controlada.
este FB.ui es quizás el enfoque más confiable, además, puede cargar este script en la parte inferior de su página con el resto de su javascript, y cargar en jquery variables / selectores como valores. Gracias por publicar esto.
klewis
@blackhawk ... pero FB.ui también requiere app_id, que no siempre es una opción ... :)
jave.web
@Bravesh B Buscando en la documentación relacionada con FB.ui que vinculó, no pude encontrar los parámetros que pasa a FB.ui como imagen, título, descripción. ¿Podría decirme dónde los encontró?
A partir del 18 de abril de 2017, los siguientes parámetros ya no son compatibles con las versiones 2.9 y posteriores de Graph API. Para las versiones 2.8 y anteriores, los parámetros seguirán funcionando hasta el 17 de julio de 2017.
Goran Jakovljevic
9
Tienes varias opciones:
Utilice el botón Compartir de FB estándar y configure el texto a través de Open Graph API y metaetiquetas en su página.
En lugar de Compartir, utilice el método stream.publish de FB.ui , que le permite controlar la URL, el título, el título, la descripción y la miniatura en tiempo de ejecución.
¿Puede dar más detalles sobre este último? ¿Cuáles son estos parámetros?
Jeroen Vannevel
6
Puede personalizar el cuadro de diálogo para compartir de Facebook utilizando el SDK de JavaScript asincrónico proporcionado por Facebook y configurando los valores de sus parámetros
Eche un vistazo al siguiente código:
<script type="text/javascript">
$(document).ready(function(){
$('#share_button').click(function(e){
e.preventDefault();
FB.ui(
{
method: 'feed',
name: 'This is the content of the "name" field.',
link: 'URL which you would like to share ',
picture: ‘URL of the image which is going to appear as thumbnail image in share dialogbox’,
caption: 'Caption like which appear as title of the dialog box',
description: 'Small description of the post',
message: ''
}
);
});
});
</script>
Antes de copiar y pegar el siguiente código, primero debe inicializar el SDK y configurar la biblioteca jQuery. Haga clic aquí para conocer paso a paso cómo configurar información sobre el mismo.
Respuestas:
Usamos algo como esto [usar en una línea]:
fuente
<a class="facebook" target="_blank" onclick="return !window.open(this.href, 'Facebook', 'width=640,height=300')" href="http://www.facebook.com/sharer/sharer.php?u=YOUR_URL">Facebook</a>
etc.Para dar parámetros personalizados a facebook compartir su mejor dar sólo el enlace de facebook y recibe su nombre + descripción + Imagen de forma automática desde la página que está compartiendo. Para "ayudar" a la API de Facebook a encontrar esas cosas, puede poner las siguientes cosas en el encabezado de la página que está compartiendo:
Chequea aquí
Si la página no está bajo su control, use lo que AllisonC ha compartido anteriormente.
Para el comportamiento del tipo de vista modal emergente:
Use su propio botón / enlace / texto y luego puede usar un tipo de vista modal de ventana emergente de esta manera:
donde twitterbtn-link y facebookbtn-link son identificadores de anclas.
fuente
if( window.open(.....) ) event.preventDefault();
lugar de simplemente `devolver falso; ˙! - de esa manera, solo evita el comportamiento predeterminado (enlace abierto) cuando se abre la ventana - proporciona un respaldo cuando no era ...utilice esta función derivada del enlace proporcionado por IJas
O también puede usar la última función FB.ui si usa FB JavaScript SDK para una función de devolución de llamada más controlada.
consulte: FB.ui
fuente
Tienes varias opciones:
fuente
Puede personalizar el cuadro de diálogo para compartir de Facebook utilizando el SDK de JavaScript asincrónico proporcionado por Facebook y configurando los valores de sus parámetros
Eche un vistazo al siguiente código:
Antes de copiar y pegar el siguiente código, primero debe inicializar el SDK y configurar la biblioteca jQuery. Haga clic aquí para conocer paso a paso cómo configurar información sobre el mismo.
fuente
Esta es la solución actual (diciembre de 2014) y funciona bastante bien. Cuenta con
<a onclick="return !window.open(this.href, 'Share on Facebook', 'width=640, height=536')" href="https://www.facebook.com/sharer/sharer.php?u=href=$url&display=popup&ref=plugin" target="_window"><img src='/_img/icons/facebook.png' /></a>
$ url var debe definirse como la URL para compartir.
fuente
Este es un simple cuadro de diálogo que ofrece Facebook. Lea aquí para obtener más detalles del enlace
fuente
podría combinar la idea de AllisonC con la
window.open
función: http://www.w3schools.com/jsref/met_win_open.aspY luego, en cada enlace, llama a la función openWin con la URL de red social correcta.
fuente
Pruebe este sitio http://www.sharelinkgenerator.com/ . Espero que esto ayude.
fuente