找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2047|回复: 0

[分享] WordPress 将选中文字转发到微博

[复制链接]
发表于 2016-1-7 13:15:21 | 显示全部楼层 |阅读模式 来自 河南省郑州市
  最近在看腾讯新闻的时候,无意中发现,当我选中新闻中的文字的时候,鼠标右上角会显示一个“转播至微博”的按钮,点击后就会将选中的文字转发到微博上。这是一个很不错的用户体验,如果能把它引入到  WordPress 博客中,那不是很好吗?
  为此我还特地去注册了一个腾讯微博开放平台的开发者,当我开始阅读开发文档的时候,才发现,他妹的,腾讯官方已经推出一个相同功能的应用,叫作  
“Q-Share”,再翻阅了一下其他资料,原来已经有前辈写出了js  
页面文字选中后分享到新浪微博的方法,那我就省力多了,两者结合一下,把新浪微博和腾讯微博两个按钮都加上了,然后闲的蛋疼的我又把它翻译成了
jQuery  的方法。
  效果的话就可以看本站了,选中任何文字,就会在右上角显示两个微博按钮,点击试试吧。
  实现的方法也很简单,只需要两步:
1、引入 jQuery,相信大多数 WordPress 博客都已经引入了  jQuery,那就可以直接进行第二步了。
  2、在页面底部,或者更确切的说,在引入 jQuery 库的后面加上这样一段  JS,你就可以看到和本站一样的效果了。
  var miniBlogShare = function() {
  //指定位置驻入节点
  $('img id="imgSinaShare" class="img_share" title="将选中内容分享到新浪微博"
src="http://upload.chinaz.com/2011/1103/1320285750869.gif" /img
id="imgQqShare" class="img_share" title="将选中内容分享到腾讯微博"
src="http://upload.chinaz.com/2011/1103/1320285750811.png"
/').appendTo('body');
  
  //默认样式
  $('.img_share').css({
  display : 'none',
  position : 'absolute',
  cursor : 'pointer'
  });
  
  //选中文字
  var funGetSelectTxt = function() {
  var txt = '';
  if(document.selection) {
  txt = document.selection.createRange().text;
  } else {
  txt = document.getSelection();
  }
  return txt.toString();
  };
  
  //选中文字后显示微博图标
  $('html,body').mouseup(function(e) {
  if (e.target.id == 'imgSinaShare' || e.target.id == 'imgQqShare') {
  return
  }
  e = e || window.event;
  var txt = funGetSelectTxt(),
  sh = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0,
  left = (e.clientX - 40  0) ? e.clientX + 20 : e.clientX - 40,
  top = (e.clientY - 40  0) ? e.clientY + sh + 20 : e.clientY + sh - 40;
  if (txt) {
  $('#imgSinaShare').css({
  display : 'inline',
  left : left,
  top : top
  });
  $('#imgQqShare').css({
  display : 'inline',
  left : left + 30,
  top : top
  });
  } else {
  $('#imgSinaShare').css('display', 'none');
  $('#imgQqShare').css('display', 'none');
  }
  });
  
  //点击新浪微博
  $('#imgSinaShare').click(function() {
  var txt = funGetSelectTxt(), title = $('title').html();
  if (txt) {
  window.open('http://v.t.sina.com.cn/share/share.php?title=' + txt + '
—— 转载自:' + title + 'url=' + window.location.href);
  }
  });
  
  //点击腾讯微博
  $('#imgQqShare').click(function() {
  var txt = funGetSelectTxt(), title = $('title').html();
  if (txt) {
  window.open('http://v.t.qq.com/share/share.php?title=' +
encodeURIComponent(txt + ' —— 转载自:' + title) + 'url=' +
window.location.href);
  }
  });}();

是不是很简单呀?
  赶紧选中本文的标题,在微博上通知你的好友来围观吧,哈哈~



  PS:最后,说一句,其实这个方法不仅仅适用于WordPress,JS 是通用的,你可以把这段JS 挂载到任何网站上都可以得到相同的效果。
  PS2:最最最后,再说一句,麻烦各位在使用前,把JS 里的两张微博的图片路径替换成自己的地址,因为小站流量有限,大家帮我省着点花呗,嘿嘿。
  转载请注明来源:http://wange.im/wordpress-share-selected-text-to-weibo.html
查看更多 wordpress教程 wordpress主题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-5-4 13:09 , Processed in 0.052455 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表