Как разместить ссылку на пост в кратком изображении с помощью JavaScript в блоггере - PullRequest
0 голосов
/ 27 июня 2018

Я нашел этот шаблон в интернете, он идеально подходит для моих целей.
Но есть только одна проблема, изображение в резюме не ссылается на пост, я идентифицировал скрипт, но я не знаю API блоггера, и я не знаю много о javascript, поэтому я не могу получить изображение для ссылки на пост.

ОБЗОР БЛОГА (testenextdark.blogspot.com)
КОД ШАБЛОНА (пастин)

//<![CDATA[

function removeHtmlTag(strx,chop){ 
    if(strx.indexOf("<")!=-1)
    {
        var s = strx.split("<"); 
        for(var i=0;i<s.length;i++){ 
            if(s[i].indexOf(">")!=-1){ 
                s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length); 
            } 
        } 
        strx =  s.join(""); 
    }
    chop = (chop < strx.length-1) ? chop : strx.length-2; 
    while(strx.charAt(chop-1)!=' ' && strx.indexOf(' ',chop)!=-1) chop++; 
    strx = strx.substring(0,chop-1); 
    return strx+'...'; 
}

function createSummaryAndThumb(pID){
    var div = document.getElementById(pID);
    var imgtag = "";
    var img = div.getElementsByTagName("img");
    var summ = summary_noimg;
    if(img.length>=1) { 
        imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
        summ = summary_img;
    }

    var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
    div.innerHTML = summary;
}

//]]>

1 Ответ

0 голосов
/ 27 июня 2018

Внесите небольшое изменение в функцию createSummaryAndThumb, чтобы получить ссылку на сообщение и обернуть тег <img> внутри тега <a>. ваш код должен быть таким:

function createSummaryAndThumb(pID){
    var div = document.getElementById(pID);
    var imgtag = "";
    var img = div.getElementsByTagName("img");
    var summ = summary_noimg;
    var link = div.parentNode.parentNode.querySelector('.post-title a').getAttribute('href');
    if(img.length>=1) { 
        imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><a href="'+link+'"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></a></span>';
        summ = summary_img;
    }

    var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
    div.innerHTML = summary;
}
...