繁体   English   中英

更改页面网址而不刷新页面

[英]changing page url without refreshing page

这有可能吗?

这是问题所在:

我有一个使用此URL的关键字搜索(搜索后): http:// localhost / thi / search?keyword = key

然后我有一个使用AjaxForm插件(jquery)的滑块搜索...

当我执行滑块搜索时,显然我仍然会在关键字搜索URL中(因为请求是通过ajax发送的)

有没有办法将当前网址更改为类似http:// localhost / thi / search?price = 100 (滑块通过GET提交,价格为GET变量)

我希望这样做是因为我希望将滑块的搜索结果添加为书签...或者有其他替代方法吗?

您可以通过window.location.hash方法使用哈希网址(search#price = 100)。 这些将被加为书签,并且用户可以使用后退和前进按钮浏览这些内容。

用法样本:

<a href="#">100</a>

$('a').click(function() {
    window.location.hash = 'price='+$(this).html();
    return false;
});

无需刷新即可将网址设置为search#price=100

我为此建议的最好的办法是使用URL中的哈希。 这将使用户可以为URL添加书签,并在返回时仍保持状态。 另一个好处是您可以更改哈希而不需要刷新页面。

所以您的网址看起来像是... http:// localhost / thi / search?keyword = key#price = 100

jQuery地址插件将对此非常有效。

http://www.asual.com/jquery/address/

使用HTML5可以实现。 使用window.history.pushState()。

范例:

if(currentHref!=window.location){
    window.history.pushState({path:currentHref},'',currentHref);    
}

详细信息和说明: http : //tinywall.info/2012/02/22/change-browser-url-without-page-reload-refresh-with-ajax-request-using-javascript-html5-history-api-php- jquery-like-facebook-github-navigation-menu /

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM