1

有没有办法可以预过滤此页面以仅显示“应用程序”。

就像,如果我访问http://razorjack.net/quicksand/demos/one-set-clone.html#app它只会显示“应用程序”。这可能吗?

谷歌搜索一些人说这会有所帮助:

if(window.location.hash) {
                // run code here to filter the quicksand set
                var $filteredData = $data.find('li[data-type=' + window.location.hash + ']');
                $applications.quicksand($filteredData, {
                    duration: 800
                });
            }

但我不知道在哪里使用它。

非常感谢您在这里的任何帮助- 真的卡住了。

4

1 回答 1

2
$(document).ready(function(){
   //on page load, we check to see if a hash value exists.
   if(window.location.hash) {
       // run code here to filter the quicksand set
       var $filteredData = $data.find('li[data-type=' + window.location.hash + ']');
       $applications.quicksand($filteredData, {
           duration: 800
       });
   }else{
       // the page does not have a hash value. deliver normal content.
       $applications.quicksand('Your Normal Data Here', {
           duration: 800
       });
   }
});

此代码仅在页面准备好后运行。它检查哈希值是否存在。如果是这样,它将数据过滤到li具有data type equal to the hash value. 然后它准备流沙以相应地过滤数据。如果不存在哈希值,我们会正常加载流沙。我不知道您对选择器做了什么,所以只需用'Your Normal Data Here'您使用的任何数据过滤器替换即可。

应该注意的是,根据示例,他们希望您具有<li>如下结构->

<li data-type="data1"> //stuff </li>

data1用于过滤目的的预期哈希值在哪里。

于 2012-09-24T19:25:14.627 回答