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

私は2つのデバッグステートメントを追加することでそれを見つけました: http://jsfiddle.net/Rt4pt/6/

何を隠したいのかわかりませんが、これを試してください

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