0

仅供参考,我在 javascript 上很烂,无法将我的头绕在查询字符串上。

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

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

演示的给定过滤器:

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

排序方式: 名称、大小

因此,根据您使用的参数,传入的 URL 可能看起来像这样,覆盖默认视图:

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

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

4

1 回答 1

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 中输入所有列表,并将类设置为隐藏,然后根据查询字符串您将知道要显示哪一个

于 2012-10-25T21:05:34.833 回答