如何使用url触发jquery函数?

时间:2009-05-07 21:00:18

标签: jquery url function triggers hyperlink

这是我的第一个问题..所以,我们走了。

我有一个网站,100%xhtml / css,带有一些ajax函数,这要归功于jquery。

问题是..对于所有“子页面”..网址保持不变(index.php)..

我的问题是......

jquery是否允许某些url参数触发特定的函数?

示例: www.mypage.com - >主页..如果我点击..让我们说产品..网址将是相同的..如果我尝试将网址发送给朋友(复制和粘贴),它将是www.mypage.com ..所以..如果我的朋友点击链接,他将被重定向到主页而不是产品页面,这是我想与他分享的部分。

无论如何设置网址如www.mypage.com?s=products触发jquery事件而不使用php?

提前感谢。

5 个答案:

答案 0 :(得分:2)

jquery querystring plugin提供了一种解析查询字符串的简便方法。

答案 1 :(得分:2)

听起来我想要在不重新加载页面的情况下更改查询字符串。这是不可能的。您可以做的是更改网址的#anchor部分,因此您的ajax链接会将位置设置为mysite.com/#products,然后使用jquery在加载时检测并采取相应的行动。

答案 2 :(得分:2)

通常,AJAX应用程序中的虚假页面会通过在#之后添加内容来更改查询字符串,例如www.mypage.com/#products。如果您尝试在JavaScript中将URL更改为其他URL,则浏览器将重定向到该页面。但是,如果更改在#之后,它将保留在页面上(并尝试将具有该ID的元素放在浏览器窗口的顶部)。

因此,您可以尝试使用以下JavaScript来设置网址:

window.location.hash = 'products';

然后,您可以在加载页面时查找,以便了解要检索的页面。

还有一些现成的JavaScript库可以帮助您在这些场景中正确运行历史记录,但我不太了解推荐特定的库。

答案 3 :(得分:2)

http://blog.rebeccamurphey.com/2007/12/04/anchor-based-url-navigation-with-jquery/

从未这样做,但这个网站有非常简单的方法。

基本上,您为每个逻辑页面指定一个锚标记,并在用户导航到该逻辑页面时相应地更新URL。

当新用户到达时,您解析查询字符串(如上所述),然后执行适当的导航操作。

答案 4 :(得分:1)

有很多插件可用于此类功能。找到它们的关键词是“历史”