11

有没有办法访问 stackoverflow 的很棒的标签系统?我想为我自己的网站借用 Stack 很棒的自动建议和标记迷你解释框。显然,我可以使用 jQuery UI 自动建议标签,但我真的很想也包括很酷的小标签描述。如果没有,有人可以告诉我所有这些解释/描述的来源,以便我可以实施类似的系统吗?在此处输入图像描述

4

2 回答 2

16

tageditornew.js

第 308 行:

$.get("/filter/tags", {q: a,newstyle: !0}, "json").done(function(c) {
    C["t_" + a] = c;
    StackExchange.helpers.removeSpinner();
    b(c)
})

这可能会帮助你!


事实证明,

API 网址是这样的:

https://stackoverflow.com/filter/tags?q=STRING&newstyle=BOOLEAN
  •  q - 查询文本。
  •  newstyle - 是否需要新样式。新样式的结果将以 JSON 格式返回,并带有同义词和摘录等附加信息。

演示: http: //jsfiddle.net/DerekL/bXXb7/(使用跨域请求 jQuery 插件)

例如:

https://stackoverflow.com/filter/tags?q=htm

会给你:

"html|99829\nhtml5|16359\nxhtml|4143\nhtml-parsing|1461\nhtml-lists|1328\nhtml5-video|949"

99829问题的数量在哪里。我花了 15 分钟查看源代码来找出这个 api。-_-”

换上javascript新风格会给你这个:这里

[{"Name":"javascript","Synonyms":"classic-javascript|javascript-execution","Count":223223,"Excerpt":"JavaScript is a dynamic language commonly used for scripting in web browsers. It is NOT the same as Java. Use this tag for questions regarding ECMAScript and its dialects/implementations (excluding ActionScript and JScript). If a framework or library, such as jQuery, is used, include that tag as well. Questions that don't include a framework/library tag, such as jQuery, implies that the question requires a pure JavaScript answer."},{"Name":"javascript-events","Synonyms":"javascript-event","Count":5707,"Excerpt":"Creating and handling JavaScript events inline in HTML or through a script."},{"Name":"facebook-javascript-sdk","Synonyms":"","Count":992,"Excerpt":"Facebook's JavaScript SDK provides a rich set of client-side functionality for accessing Facebook's server-side API calls. These include all of the features of the REST API, Graph API, and Dialogs."},{"Name":"javascript-library","Synonyms":"","Count":675,"Excerpt":"A JavaScript library is a library of pre-written JavaScript which allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies."},{"Name":"javascript-framework","Synonyms":"","Count":563,"Excerpt":"A JavaScript framework is a library of pre-written JavaScript which allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies."},{"Name":"unobtrusive-javascript","Synonyms":"","Count":340,"Excerpt":"Unobtrusive JavaScript is a general approach to the use of JavaScript in web pages."}]

你可以从那里得到什么:

  • 所有标签都以javascript
  • 同义词
  • 标签计数
  • 不错的标签说明
于 2012-06-18T05:38:29.760 回答
1

如果您正在寻找高级逻辑,简而言之,它只是一个快速的自定义自动完成。

每当您键入一个标签(即一个新词或一个与以前的标签用空格分隔的词)时,将使用 JSON 对象向服务器发出 AJAX 请求,然后由客户端脚本解释并以可用的布局呈现.

比较字母“h”单词“html”的自动完成 JSON 对象应该可以让您充分了解此特定实现的工作原理(如果出现提示,可以使用任何文本编辑器打开这些对象)。

在一个有点不相关的说明:自动完成响应必须是fast。根据运行数据自动完成的复杂性,您可能会发现IMDb 魔术搜索的工作原理很有趣。

更新:

看到您关于访问标签库内容的评论,这实际上可能更像是一个元问题。我很难想到使用 API(如果有的话)或仅使用来自外部资源的标签库对 SO 有益的场景 - 但是这里的内容是在知识共享下提供的,因此您可以在正确归属的情况下使用它。这不构成法律建议:)

于 2012-06-18T05:22:43.317 回答