使用查询字符串过滤Quicksand

时间:2012-10-25 20:58:38

标签: javascript jquery parameters quicksand

仅供参考我习惯于使用javascript而无法绕过查询字符串。

我的问题是关于流沙 http://razorjack.net/quicksand/index.html

如何使用javascript修改http://razorjack.net/quicksand/scripts/main.js以允许通过传入的URL根据给定的过滤器进行排序。

Demo的给定过滤器:

按类型过滤:         一切,         应用程序,         应用

排序依据:         名称,         大小

因此,传入的URL可能如下所示,具体取决于您使用的参数,覆盖默认视图:

razorjack.net/quicksand/index.html?Type=Everything&Sort=Size

razorjack.net/quicksand/index.html?Type=Utilities&Sort=Name

1 个答案:

答案 0 :(得分:0)

Quick Sand Plugin不会对对象进行排序或过滤,它只会将一个对象列表替换为另一个对象,整个点就是很酷的动画。

所以你需要在其他地方进行排序和/或过滤,如果结果来自数据库,最好在服务器端,然后将它们放在列表中,然后调用Quick Sand插件替换当前列表与你刚刚创建的那个

  function loadPageVar (sVar) {  
  return unescape(window.location.search.replace(new RegExp("^(?:.*[&\\?]" + escape(sVar).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));  
}  

// Would alert the value of QueryString-variable called name  
alert(loadPageVar("Type"));

这是一个如何从This Question

获取javascript中的查询字符串值的示例

如果您的列表中没有那么多项目,那么您可以提前在HTML中键入所有列表,并将类设置为隐藏,然后根据查询字符串,您将知道哪一个到显示