我有一个价格滑块,可用于过滤产品结果。它是here找到的离子范围滑块。
当用户完成拖动滑块后,会向数据库发送XMLHttp请求,并在不重新加载页面的情况下刷新产品。
此时我想更新网址以匹配网页内容。例如,如果用户访问以下页面:
mywebsite.com/a-product-category/
并将价格滑块设置为$10 - $40
,我希望将网址更改为:
mywebsite.com/a-product-category/10-to-40
有没有一种简单的方法可以在jQuery或Javascript中执行此操作?我尝试了各种实现PushState的方法,但它并不适用于我。也许我做错了:
if (!this.dragging) {
window.history.pushState({}, '', '/10-to-40');
}
非常感谢任何帮助。感谢。
修改
我已经创建了2个版本,其中1个是window.history.pushState({}, '', '/10-to-40');
行,1个是没有。
没有pushState: (链接不再有效)
使用pushState: (链接不再有效)
如您所见,滑块适用于第一个示例,但不适用于第二个示例。这是我在第二页上得到的错误:
SecurityError:操作不安全。
这是指第982行,即pushState。
有没有理由不安全?感谢
编辑2:
这是因为在子域上工作。将pushState更改为完整的URL可以解决问题。
if (!this.dragging) {
window.history.pushState({}, '', 'http://dev.mywebsite.com/a-product-category/10-to-40');
}
由于