Skip to main content

Quick & Easy Way to Implement Drag n Share With jQuery


Drag to Share with jQuery
You must have seen the drag to share functionality on Mashable that lets visitors share the content on popular social networks intuitively. Just drag one of the images in an article and you’ll be able to share the article on your favorite social network by dropping the dragged image over its icon. Even, Nettuts has written a nice tutorial on how to implement this functionality into your website using jQuery. But here is a much elegant solution to achieve the drag n share effect using jQuery with just a line or two of JavaScript code.

Get the prettySociable Plugin

To implement this functionality, you will need the prettySociable jQuery plugin written by Stéphane Caron. Download and extract the plugin, it contains everything you need to get up and running with drag n share.

Include the Required Files

To add drag n share to a page, add reference to jquery and prettySociable in your page’s headtag. The plugin folder also includes images and css folders in addition to js folder. You’ll need them too as css folder contains styles necessary for drag n share elements and images folder contains icons for various social networks.
Here’s the complete code you need to add into the head tag.
  1. <link rel="stylesheet" href="css/prettySociable.css" type="text/css" media="screen" charset="utf-8" />  
  2. <script src="js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>  
  3. <!--[if lte IE 6]><script src="js/DD_belatedPNG.js" type="text/javascript" charset="utf-8"></script><![endif]-->  
  4. <script src="js/jquery.prettySociable.js" type="text/javascript" charset="utf-8"></script>  
The js folder also includes DD_belatedPNG.js which is used to fix PNG transparency issues in IE6 or older. You need to include that too.

Define Draggable Links

Now to add drag n share to your web page, add an anchor tag <a href="#" > with another attribute rel="prettySociable".

Initialize prettySociable

After you have added the rel attribute, you need to initialize the script. Add this single line of code, just above the </body>
  1. <script type="text/javascript" charset="utf-8">  
  2.     // Init prettySociable  
  3.     $.prettySociable();  
  4. </script>  
Check out your page in browser and you should get drag to share functionality working nicely.

Customizing the Default Settings

Customizing the Shared Information

When you add rel="prettySociable" on an anchor tag with its href="#", this will share the URL of the current web page and use the title and meta description in head tag to display the tooltip on drag.
But if you need to share a different URL instead of the current web page, specify a URL in thehref attribute. Also you can customize the tooltip information which is shown on dragging. You can specify custom title and description in the rel attribute in this way.
rel="prettySociable;title:custom title;excerpt:custom excerpt;"

Customizing the Sharing Panel

By default prettySociable supports eight social networks but you can customize the social networks and their icons to your requirement. For that you’ll need to pass a settings object toprettySociable function.
Here’s the complete settings object
  1. $.prettySociable({  
  2.                 animationSpeed: 'fast'/* fast/slow/normal */  
  3.                 opacity: 0.90, /* Value between 0 and 1 */  
  4.                 share_label: 'Drag to share'/* Text displayed when a user rollover an item */  
  5.                 share_on_label: 'Share on '/* Text displayed when a user rollover a website to share */  
  6.                 hideflash: false/* Hides all the flash object on a page, set to TRUE if flash appears over prettySociable */  
  7.                 hover_padding: 0,  
  8.                 websites: {  
  9.                     facebook : {  
  10.                         'active'true,  
  11.                         'encode':true// If sharing is not working, try to turn to false  
  12.                         'title''Facebook',  
  13.                         'url''http://www.facebook.com/share.php?u=',  
  14.                         'icon':'images/prettySociable/large_icons/facebook.png',  
  15.                         'sizes':{'width':70,'height':70}  
  16.                     },  
  17.                     twitter : {  
  18.                         'active'true,  
  19.                         'encode':true// If sharing is not working, try to turn to false  
  20.                         'title''Twitter',  
  21.                         'url''http://twitter.com/home?status=',  
  22.                         'icon':'images/prettySociable/large_icons/twitter.png',  
  23.                         'sizes':{'width':70,'height':70}  
  24.                     },  
  25.                     delicious : {  
  26.                         'active'true,  
  27.                         'encode':true// If sharing is not working, try to turn to false  
  28.                         'title''Delicious',  
  29.                         'url''http://del.icio.us/post?url=',  
  30.                         'icon':'images/prettySociable/large_icons/delicious.png',  
  31.                         'sizes':{'width':70,'height':70}  
  32.                     },  
  33.                     digg : {  
  34.                         'active'true,  
  35.                         'encode':true// If sharing is not working, try to turn to false  
  36.                         'title''Digg',  
  37.                         'url''http://digg.com/submit?phase=2&amp;url=',  
  38.                         'icon':'images/prettySociable/large_icons/digg.png',  
  39.                         'sizes':{'width':70,'height':70}  
  40.                     }  
  41.                     //add more social networks here  
  42.                 },  
  43.                 tooltip: {  
  44.                         offsetTop:0,  
  45.                         offsetLeft: 10  
  46.                     },  
  47.                 popup: {  
  48.                     width: 900,  
  49.                     height: 500  
  50.                 },  
  51.                 callback: function(){} /* Called when prettySociable is closed */  
  52.             });  
The settings object is self explaining. You can specify which websites to use and also the icons to use for each website in the websites parameter.
You can enhance this drag n share script even further by using a shortened URL in the anchor tag’s href attribute.
P.S.: To get this script to work correctly in IE, you will need to set margin and padding valuesin the style-sheet for anchor elements which are draggable.

Comments

Popular posts from this blog

உடல் எடையை குறைக்க வேண்டுமா ?

இன்றைய அவசர உலகின் மிக பெரிய பிரச்சனையாக இருப்பது உடல் எடை அதிகரிப்பது தான்.மனம் போன போக்கில் உணவு கட்டு பாடு இல்லாமல் கண்டதையும் உள்ளே தள்ளுவதும்,உக்காந்த இடத்திலேயே கணணி முன் நேரத்தை விரயமாக்குவதும் தான் இந்த பிரச்சனைக்கு மூல காரணமாகும். அது சரி இந்த பிரச்சனையை எப்படி இல்லாமல் செய்வது அல்லது உடல் எடையை எவ்வாறு குறைப்பது என்பதை பற்றி பாப்போம் , பல வருட ஆரய்சிக்குபின் மருத்துவர்கள்   உடல் எடைய குறைக்க மிகவும் சுலபமான உடற்பயிற்சியை கண்டுபிடித்துள்ளனர்.இது  100% பயனளிக்க கூடியது, எந்த இடத்திலும் எந்தநேரத்திலும் மிக சுலபமா செய்ய கூடிய உடற் பயிற்சியாகும்.இந்த உடற்பயிற்சிகள் படத்துடன் கீழே தரப்பட்டுள்ளது நீங்களும் முயற்சித்து பாருங்கள கண்டிப்பாக பலன் கிடைக்கும்... முதலில் நாற்காலியில் உட்கார்ந்து இட  பக்கம் பார்கவும் .. ..        அடுத்து  நாற்காலியில் உட்கார்ந்து வல  பக்கம் பார்கவும்  ....  நண்பர்கள் யாரவது மச்சி வாடா சின்ன பீஸ் ,இங்க பாரு சூப்பர் அய்டம்னு சொல்லி கால்ல விழுந்து கூப்பிட்டலோ மேற்கூறிய உடற் பயிற்சிகளை முயற்சித்து பார்கவும் கண்டிப்பாக பலன் கிடைக்கும் .

38 (new) web tools to keep you busy

For many of us, the internet represents our daily job, income resource or biggest hobby. Every day we check our emails, read our feeds, visit our websites, find and discuss new things and GOD knows what else. It requires a lot of tools to do all this stuff and sometimes, we forget to search for easier solutions losing valuable time or keeping down the production graph. It's very hard to keep track with everything that's new and popular and this is why we do monthly searches for the best web tools out there. Enjoy!  45+ Web Operating Systems "There are many more web operating systems hoping to bring all your usual desktop applications online in one place - here are more than 45 of our favorites."  15 Ways To Create Website Screenshots "15 Ways To Create Website Screenshots"  Open Source Windows "The promise of open source software is best quality, flexibility and reliability. The only way to have TRUE "Open Source Windows"is

40 Fresh & Beautiful Examples of Websites With Large Backgrounds

Using large sized pictures or illustrations as your website’s background adds a great visual appeal to your website’s design. Many web designers use large images as backgrounds as more and more users are now opting for high resolution monitors and high speed internet connections. Here’s a showcase of 40 Fresh and amazing websites that are using large background images. 1.  The Pixel Blog 2.  Copimaj Interactive 3.  Flourish Web Design 4.  Abduction Lamp 5.  Morphix Design Studio 6.  Final Phase 7.  Make Photoshop Faster 8.  WebSarga 9.  Suie Paparude 10.  Duirwaigh Studios 11.  BlackMoon Design 12.  Sepitra 13.  Le Blog de Gruny 14.  Piipe 15.  Mozi Design Studio 16.  Electric Current 17.  Lora Bay Golf 18.  Life Style Sports 19.  ligne triez 20.  Oliver Kavanagh 21.  World of Merix Studio 22.  Le Web Defi 23.  How host 24.  Productive Dreams 25.  Gary Birnie 26.  Glocal Ventures 27.  GDR UK 28.  Absolute Bica 29.  Le Nordik 30.  Leaf Tea Shop & Bar 31.  Paul Smith 32.  EwingCole