javascript - 使用 Tumblr API 从帖子标题中提取第一句话

标签 javascript api jquery tumblr

我有一个关于 Tumblr API 的简单问题。我正在为一名摄影师开发一个网站,并希望使用该 API 来传输她主页上最近两篇帖子的前 50 - 100 个单词。我编写的 JS 文件流式传输最近两篇文章的标题,但我不知道如何仅提取前 50 个左右的单词。任何建议将不胜感激!!

function buildURL (blogname, apiKey) {
    return 'http://api.tumblr.com/v2/blog/'
        + blogname
        + '.tumblr.com/posts?api_key='
        + apiKey
        + '&limit=2'
        + '&callback=?'
}

var key = '/* Put your Tumblr Key Here */'

var url = buildURL('ehockstein', key)

$(function () {
    $.getJSON(url, function (data) {

        console.log(data)

        createPosts(data.response.posts)

    })
})

function createPosts (posts) {

    posts.forEach(function (post) {

        var postElement = $('<div class="post"></div>')
        postElement.addClass(post.type)

        if (post.type === 'photo') {

            var caption = post.caption

            postElement.append(caption)

        }

        postElement.appendTo('#tumblr-posts')

    })
}

最佳答案

Tumblr API 不支持返回部分字幕。您需要从 API 中提取完整的标题,并在您自己的代码中创建一个包含前 50 - 100 个单词的子字符串。

这看起来像这样:

var shortCaption = caption.substring(0, 499)

这需要前 500 个字符,这将为您提供接近 100 个单词。

然后,您可以将 shortCaption 附加到 postElement(而不是附加 caption)。

您可以了解有关子字符串如何工作的更多信息 here .

关于javascript - 使用 Tumblr API 从帖子标题中提取第一句话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16826705/

相关文章:

javascript - 如何序列化包含 jQuery ajax 加载字段的表单?

javascript - 单个等号在javascript中的if语句中如何工作

jquery - 为什么某些 jQuery UI 操作对无实体的 DOM 元素不成功?

mysql - REST API 与数据库的关系

javascript - Highcharts基本条: How to know which specific bar section is clicked?

javascript - jQuery 事件监听器粘连/级联?

javascript - 如何使用 jQuery 从特定/选定元素中选择第 n 个相邻元素?

c# - 我可以使用 set 方法代替 Json 属性吗?

jquery - 使用 jQuery 将声音添加到类似 Flash 的按钮

java - Java API 类如何做这些特定的事情?