Javascript 博客相关贴子图片调整s72-c[需要专家帮助]

Javascript 博客相关贴子图片调整s72-c[需要专家帮助],javascript,blogger,Javascript,Blogger,我运行一个Blogger博客,并使用follow-code JavaScript代码(不需要jQuery)来显示带有标签/类别的相关文章 <script type='text/javascript'> var defaultnoimage=&quot;http://1.bp.blogspot.com/-M72rpgunTq0/VUOKijudN_I/AAAAAAAABoI/LQ18scEunSg/w72/favicon-TIK.png&quot

我运行一个Blogger博客,并使用follow-code JavaScript代码(不需要jQuery)来显示带有标签/类别的相关文章

        <script type='text/javascript'>
    var defaultnoimage=&quot;http://1.bp.blogspot.com/-M72rpgunTq0/VUOKijudN_I/AAAAAAAABoI/LQ18scEunSg/w72/favicon-TIK.png&quot;;
    var maxresults=16;
    var splittercolor=&quot;#d4eaf2&quot;;
    var relatedpoststitle=&quot;Related Posts&quot;;
    </script>
    <script type='text/javascript'>//<![CDATA[
    var relatedTitles = new Array();
    var relatedTitlesNum = 0;
    var relatedUrls = new Array();
    var thumburl = new Array();

    function related_results_labels_thumbs(json) {
        for (var i = 0; i < json.feed.entry.length; i++) {
            var entry = json.feed.entry[i];
            relatedTitles[relatedTitlesNum] = entry.title.$t;
            try {
                thumburl[relatedTitlesNum] = entry.media$thumbnail.url
            } catch (error) {
                s = entry.content.$t;
                a = s.indexOf("<img");
                b = s.indexOf("src=\"", a);
                c = s.indexOf("\"", b + 5);
                d = s.substr(b + 5, c - b - 5);
                if ((a != -1) && (b != -1) && (c != -1) && (d != "")) {
                    thumburl[relatedTitlesNum] = d
                } else {
                    if (typeof(defaultnoimage) !== 'undefined') {
                        thumburl[relatedTitlesNum] = defaultnoimage
                    } else {
                        thumburl[relatedTitlesNum] = "http://1.bp.blogspot.com/_u4gySN2ZgqE/SosvnavWq0I/AAAAAAAAArk/yL95WlyTqr0/s400/noimage.png"
                    }
                }
            }
            if (relatedTitles[relatedTitlesNum].length > 80) {
                relatedTitles[relatedTitlesNum] = relatedTitles[relatedTitlesNum].substring(0, 80) + "..."
            }
            for (var k = 0; k < entry.link.length; k++) {
                if (entry.link[k].rel == 'alternate') {
                    relatedUrls[relatedTitlesNum] = entry.link[k].href;
                    relatedTitlesNum++
                }
            }
        }
    }
    function removeRelatedDuplicates_thumbs() {
        var tmp = new Array(0);
        var tmp2 = new Array(0);
        var tmp3 = new Array(0);
        for (var i = 0; i < relatedUrls.length; i++) {
            if (!contains_thumbs(tmp, relatedUrls[i])) {
                tmp.length += 1;
                tmp[tmp.length - 1] = relatedUrls[i];
                tmp2.length += 1;
                tmp3.length += 1;
                tmp2[tmp2.length - 1] = relatedTitles[i];
                tmp3[tmp3.length - 1] = thumburl[i]
            }
        }
        relatedTitles = tmp2;
        relatedUrls = tmp;
        thumburl = tmp3
    }
    function contains_thumbs(a, e) {
        for (var j = 0; j < a.length; j++) {
            if (a[j] == e) {
                return true
            }
        }
        return false
    }
    function printRelatedLabels_thumbs(current) {
        var splitbarcolor;
        if (typeof(splittercolor) !== 'undefined') {
            splitbarcolor = splittercolor
        } else {
            splitbarcolor = "#d4eaf2"
        }
        for (var i = 0; i < relatedUrls.length; i++) {
            if ((relatedUrls[i] == current) || (!relatedTitles[i])) {
                relatedUrls.splice(i, 1);
                relatedTitles.splice(i, 1);
                thumburl.splice(i, 1);
                i--
            }
        }
        var r = Math.floor((relatedTitles.length - 1) * Math.random());
        var i = 0;
        if (relatedTitles.length > 0) {
            document.write('<div class="title">' + relatedpoststitle + '</div>')
        }
        document.write('<div style="clear: both;"/>');
        while (i < relatedTitles.length && i < 20 && i < maxresults) {
            document.write(' <a href="' + relatedUrls[r] + '"><img src="' + thumburl[r] + '"/><br/><div class="relatedpostitle" >' + relatedTitles[r] + '</div></a>');
            i++;
            if (r < relatedTitles.length - 1) {
                r++
            } else {
                r = 0
            }
        }
        document.write('</div>');
        relatedUrls.splice(0, relatedUrls.length);
        thumburl.splice(0, thumburl.length);
        relatedTitles.splice(0, relatedTitles.length)
    }
    //]]></script>

<div id='related-posts'>

<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.isLast != &quot;true&quot;'/>
<script expr:src='&quot;/feeds/posts/summary/-/&quot; + data:label.name + &quot;?alt=json-in-script&amp;callback=related_results_labels_thumbs&amp;max-results=6&quot;' type='text/javascript'/>
</b:loop>
<script defer='defer' type='text/javascript'>removeRelatedDuplicates_thumbs();printRelatedLabels_thumbs(&quot;<data:post.url/>&quot;);</script>
</div>
<div style='clear:both'/>

var defaultnoimage=”http://1.bp.blogspot.com/-M72rpgunTq0/VUOKijudN_I/AAAAAAAABoI/LQ18scEunSg/w72/favicon-TIK.png";
var maxresults=16;
var splittercolor=“#d4eaf2”;
var relatedpostitle=“相关职位”;
//");
除了一个问题外,该代码工作正常。该代码生成小图像(默认blogger缩略图大小为s72-c),无法自定义大小(将s72-c更改为s200/s200-c/w200)

我已经找到了一个针对Blogger的图像大小调整解决方案脚本,但他们没有帮助

    function resizeThumb(size) {
    var popularPost = document.getElementById('PopularPosts1');
    var image = popularPost.getElementsByTagName('img');
    for (var i = 0; i < image.length; i++) {
        image[i].src = image[i].src.replace(/\/s72\-c/g, "\/s" + size + "-c")
    }
}
resizeThumb(200);
函数resizeThumb(大小){
var popularPost=document.getElementById('PopularPosts1');
var image=popularPost.getElementsByTagName('img');
对于(变量i=0;i
这是针对流行的post widget。我知道如果我在第一行更改ID,这将替换图像。但这不是解决方案,而是一种掩饰。这也意味着这两个图像加载到is s72-c和替换的图像上

我想把它(类似这样的东西)集成到第一个相关的帖子脚本中。我在对javascript知之甚少的情况下努力尝试,但失败了。所以我注册了stackoverflow,这是我的问题帖子

提前感谢您尝试帮助我。

图像大小s200-c的功能代码
函数resizeThumb(大小){
var popularPost=document.getElementById('PopularPosts1');
var image=popularPost.getElementsByTagName('img');
对于(变量i=0;i

图像大小s200的功能代码
函数resizeThumb(大小){
var popularPost=document.getElementById('PopularPosts1');
var image=popularPost.getElementsByTagName('img');
对于(变量i=0;i

首先,添加

var thumb = 200;
之后

然后

之后

希望你喜欢

function resizeThumb(size) {
    var popularPost = document.getElementById('PopularPosts1');
    var image = popularPost.getElementsByTagName('img');
    for (var i = 0; i < image.length; i++) {
        image[i].src = image[i].src.replace(/\/s200\/g, "\/s" + size + "")
    }
}
resizeThumb(200);
var thumb = 200;
var thumburl = new Array();
 thumburl[relatedTitlesNum] = thumburl[relatedTitlesNum].replace("/s72-c/","/s"+thumb+"/");
 thumburl[relatedTitlesNum] = entry.media$thumbnail.url;