【问题标题】:Issue with Related Post Javascript in BloggerBlogger 中相关帖子 Javascript 的问题
【发布时间】:2017-07-27 15:52:12
【问题描述】:

我为基于 blogger.com 的博客创建了一个相关的 javascript 帖子。相关的帖子插件循环通过附加到当前帖子的标签并显示具有相同标签的其他帖子。

你可以在行动中找到@http://www.techquark.com/2017/07/infocus-turbo-5-affordable-powerful.html

问题是我想跳过当前帖子以显示在相关帖子中,但无法实现。

PFB javascript 代码:

$(".related-ready").each(function() {
    var b = $(this).text();
    $.ajax({
        url: "/feeds/posts/default/-/" + b + "?alt=json-in-script&max-results=3",
        type: 'get',
        dataType: "jsonp",
        success: function(e) {
            var u = "";
            var h = '<div class="related">';
            for (var i = 0; i < e.feed.entry.length; i++) {
                for (var j = 0; j < e.feed.entry[i].link.length; j++) {
                    if (e.feed.entry[i].link[j].rel == "alternate") {
                        u = e.feed.entry[i].link[j].href;
                        break
                    }
                }
                var g = e.feed.entry[i].title.$t;
                var c = e.feed.entry[i].content.$t;
                var $c = $('<div>').html(c);
                if (c.indexOf("//www.youtube.com/embed/") > -1) {
                    var p = e.feed.entry[i].media$thumbnail.url;
                    var k = p
                } else if (c.indexOf("<img") > -1) {
                    var q = $c.find('img:first').attr('src');
                    var k = q
                } else {
                    var k = NO_IMAGE
                }
                h += '<li><div class="related-thumb"><a class="related-img" href="' + u + '" style="background:url(' + k + ') no-repeat center center;background-size: cover"/></div><h3 class="related-title"><a href="' + u + '">' + g + '</a></h3></li>'
            }
            h += '</div><div class="clear"/>';
            $(".related-ready").html(h);
            $('.related-img').each(function() {
                $(this).attr('style', function(i, src) {
                    return src.replace('/default.jpg', '/hqdefault.jpg')
                }).attr('style', function(i, src) {
                    return src.replace('s72-c', 's1600')
                })
            })
        }
    })
});

TIA!

【问题讨论】:

  • 为这些帖子添加某种 id。显示时,检查该 id,并相应地显示。

标签: javascript html json web blogger


【解决方案1】:

您需要检查当前帖子的 ID 是否与 feed 中帖子的 ID 匹配,然后跳过该帖子,代码如下所示 -

....
for (var i = 0; i < e.feed.entry.length; i++) {
    if(e.feed.entry[i].id.$t.split("post-")[1] === "<data:post.id/>"){
        break;
    }
    for (var j = 0; j < e.feed.entry[i].link.length; j++) {
....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-25
    • 2014-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    相关资源
    最近更新 更多