16

我试图了解如何使用 jQuery 地址插件来处理与 ajax 的深度链接。

但是文档很差,我找不到任何好的教程来解释发生了什么。

我认为一个好的文档和好的例子对于每个插件都很重要。

有人可以解释或提供一些有用的解释链接吗?

$.address.change(function(event) {  
    // do something depending on the event.value property, e.g.  
    // $('#content').load(event.value + '.xml');  
});  
$('a').click(function() {  
    $.address.value($(this).attr('href'));  
});  

我的意思是,有什么作用$.address.value?它说“提供当前的深度链接值”。它甚至意味着什么?它有什么用呢?

4

4 回答 4

14

A quick tut.: 使用 AJAX 的最大警告是 URL 没有改变,因此后退按钮不起作用 + 链接没有被抓取。解决方法是使用 URL 中的页面部分锚点,即 # 符号。根据哈希符号后的数据,您可以使用 AJAX、加载可抓取的页面部分等。

唯一的问题是大多数浏览器没有 URL 更改事件,基于该事件,可以加载 AJAX 内容,所以实际上插件所做的是不时监视 URL,如果它发生更改,则触发基于 tha after-hash-sign-parameters 的事件。所以基本上你在这里做的是

    $('a').click(function() {  
    **//change the after-hash-sign-params to the value of the clicked link**
        $.address.value($(this).attr('href'));

    });
    $.address.change(function(event) { 
 **//define an event handler based on the params...**
         if (event.value = 'sortbyname')
            sortstuffbyname()
else if (event.value ='sortbysomethingelse')
         sortstuffbysomethingelse();
        // do something depending on the event.value property, e.g.  
        // $('#content').load(event.value + '.xml');  
    });  

我从未尝试过其他插件,但工作原理可能相同。

于 2010-08-17T14:26:28.363 回答
8

该插件似乎有适度的文档,但如果你正在寻找更深入的东西来做同样的事情,我会检查 jQuery BBQ:http ://benalman.com/projects/jquery-bbq-插入/

它的 $.param 实现被放入 jQuery 1.4 中,它的 deparam 实现是目前唯一读取这种新格式的东西。此外,文档很棒。

于 2009-12-23T23:56:34.497 回答
2

找到了这个在线教程,我认为这对我们了解如何使用 jQuery Address 很有帮助。那里也提供了代码示例。值得一看。

http://www.thetutorialblog.com/jquery/deep-linking-with-jquery/

于 2012-07-06T02:47:24.787 回答
0

我还在这个网站上找到如何使用 Jquery 地址和机会,该网站使用它来赞美他们的视差网站。

网址:http ://www.goodstuph.org/#/home

希望这在某种程度上有所帮助。

于 2014-01-19T09:04:15.793 回答