zoukankan      html  css  js  c++  java
  • 百度分享新浪微博无法分享图片的解决方法

    偶然发现,文章分享到sina weibo居然不能将附带的图片。后来查了一下,发现,不仅仅我遇到了这个问题。

    经过查看百度分享官方的帮助文档,发现帮助文档是按照旧版的分享代码指导自己定义使用的。而首页获取到的代码是最新版的分享代码,

    最新版分享代码尽管支持微信。

    可是在分享到新浪微博的时候有个问题,就是文章内容中的图片不能随之分享到微博中。

    不清楚这算不算插件的bug。发现好多大站点也用了百度分享。也存在这个问题。

    网上查了一下解决方法,无果,发现不仅仅是我一个人遇到这样的问题。

    于是自己折腾找了个折衷的解决方法。下面解决方法:

    起初使用的是首页一步步获取的代码:

            <div class="bdsharebuttonbox fl"><a href="#" class="bds_more" data-cmd="more"></a><a title="分
    
    享到微信" href="#" class="bds_weixin" data-cmd="weixin"></a><a title="分享到QQ空间" href="#" 
    
    class="bds_qzone" data-cmd="qzone"></a><a title="分享到QQ好友" href="#" class="bds_sqq" data-
    
    cmd="sqq"></a><a title="分享到新浪微博" href="#" class="bds_tsina" data-cmd="tsina"></a><a title="分享
    
    到腾讯微博" href="#" class="bds_tqq" data-cmd="tqq"></a></div>
            <script>window._bd_share_config={"common":{"bdSnsKey":
    
    {"tsina":"www8783com","tqq":"www8783com","t163":"www8783com","tsohu":"www8783com"},"bdText":"{$descript
    
    ion}","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":
    
    {},"selectShare":{"bdContainerClass":null,"bdSelectMiniList":
    
    ["weixin","qzone","sqq","tsina","tqq"]}};with(document)0[(getElementsByTagName('head')[0]||
    
    body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?

    v=89860593.js?

    cdnversion='+~(-new Date()/36e5)];</script>


    因为新版本号的百度分享不支持动态的给新浪微博分享时带图片。所以换回了自己定义帮助文档中旧版百度分享插件代码。使用方式:

            <div class="nr-share nr-share-top">
                <span class="nr-info fl">分享到:</span>
                <!-- Baidu Button BEGIN -->
                <div id="bdshare" class="bdshare_t bds_tools get-codes-bdshare bdsharebuttonbox  fl">
                    <a href="#" class="bds_more" data-cmd="more"></a><a title="分享到豆瓣" href="#" 
    
    class="bds_douban" data-cmd="douban"></a><a title="分享到QQ空间" href="#" class="bds_qzone" data-
    
    cmd="qzone"></a><a title="分享到QQ好友" href="#" class="bds_sqq" data-cmd="sqq"></a><a title="分享到新
    
    浪微博" href="#" class="bds_tsina" data-cmd="tsina"></a><a title="分享到腾讯微博" href="#" 
    
    class="bds_tqq" data-cmd="tqq"></a>
                </div>
    
            </div>
        <article class="nr-article" id="nr-article">
        	{$content}
        </article>
        <script type="text/javascript" id="bdshare_js" data="type=tools&mini=1" ></script> 
        <script type="text/javascript" id="bdshell_js"></script> 
        <script type="text/javascript">
        	//在这里定义bds_config
                var picurl = document.getElementById('nr-article').getElementsByTagName('img')[0] ? 
    
    document.getElementById('nr-article').getElementsByTagName('img')[0].src : '',
        	    titText = "{$title}",
                    desText = "{$description}",
                    shareText = titText + '_手游网' + ( desText ? ' - ' + desText : '') ,
                    bds_config = {'bdPic': picurl, 'bdText': shareText};
        	document.getElementById('bdshell_js').src = "http://share.baidu.com/static/js/shell_v2.js?
    
    cdnversion=" + Math.ceil(new Date()/3600000);
        
        </script>
        <!-- Baidu Button END --> 
    


    遗憾的是旧版不支持微信分享。只是也仅仅能这样取舍了。

    參考文档:http://share.baidu.com/help/customization/config

  • 相关阅读:
    第23章 SEH结构化异常处理(1)_系统SEH机制
    第22章 DLL注入和API拦截(3)
    第22章 DLL注入和API拦截(2)
    第22章 DLL注入和API拦截(1)
    驾训平台数据同步实现
    socket编程 —— 非阻塞socket (转)---例子已上传至文件中
    linux tcpdump命令抓包
    VMware虚拟机克隆CentOS 6.5后网卡修改方法
    centos vi显示中文
    不关闭seLinux解决vsftpd服务本地用户不能登录问题(500 OOPS: cannot change directory:/home/*** ( 转)
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6944168.html
Copyright © 2011-2022 走看看