1

在我完全理解我在问什么后,我会更新这个问题的标题

我正在使用 vimeo api 使用 JSON 显示视频数组并将标签用作类。这工作正常。

但是,在脚本的末尾,我想隐藏与 url 中的查询不匹配的任何元素。

var query = location.href.split('/#/').pop().split('/').join(" ");

我从 url (http://website.com/link/to/page/#/tag/tag/tag/tag = "tag tag tag tag") 获取查询,然后对照每个结果项的类检查它。

// Find Parent & checks for query classes
var thisTile = tile.parent().parent(),
    matchesClass = thisTile.hasClass(query);

// If does hot have query as class then hides
if (matchesClass === false) {
    $(this).hide();
}

注意:如果没有查询类,除了应该隐藏结果项的部分之外,一切正常。

JSFiddle:http: //jsfiddle.net/JamesKyle/Rt4pt/

测试查询:http: //jsfiddle.net/JamesKyle/Rt4pt/show/#/basketball

4

1 回答 1

3

这是一个 Javascript 对象(来自 $.getJSON),而不是 HTML DOM 元素。

console.log($(this));

Object
accepts: Object
async: true
cache: false
contentType: "application/x-www-form-urlencoded; charset=UTF-8"
contents: Object
converters: Object
crossDomain: true
dataType: "json"
dataTypes: Array[2]
flatOptions: Object
global: false
hasContent: false
isLocal: false
jQuery1800318833630066365_1344952134351: true
jsonp: "callback"
jsonpCallback: undefined
processData: true
responseFields: Object
success: function (json) {
type: "GET"
url: "http://vimeo.com/api/v2/video/47175713.json?callback=jQuery1800318833630066365_1344952134351&_=1344952134490"
xhr: function createStandardXHR() {
__proto__: Object

我发现通过添加两个调试语句:http: //jsfiddle.net/Rt4pt/6/

我不确定你想隐藏什么,但试试这个

$('#' + json[0].id ).hide();
于 2012-08-14T13:50:50.570 回答