Jquery在hashchange上调用函数

时间:2011-06-30 04:54:25

标签: javascript jquery jquery-plugins hashchange

我有两个问题

  1. 我正在使用hashchange插件....所以我想知道一个函数如下所示,每次发生hashchange时调用...因为我的代码和代码函数显然有类似的东西似乎没有被称为

    $(document).ready(function()
    {
        // function here
    });
    
  2. 另一方面,如果我删除哈希变换,如果我将http://abc.com/a.htm#http://abc.com/b.htm设为http://abc.com/b.htm 代码工作正常

  3. 问题是我的页面结构有点不同....这里是页面结构的小提琴,它在更高层次上解释了我想要实现的jsfiddle.net/vBKWd/9 ...关于哈希变化jus我的页面1上的div被第2页替换,反之亦然....我在下面显示的js函数只被调用一次而不是在hashchange之后

    或者无论如何我可以用div绑定函数,这样每当div被替换时函数被调用?

3 个答案:

答案 0 :(得分:3)

不,ready处理程序仅在文档就绪时调用,而不是在散列更改时调用。您应该使用hashchange事件,而不是:

$(window).hashchange(function () {
    // function here
});

示例:http://jsfiddle.net/vBKWd/2/

答案 1 :(得分:0)

在下面的文档准备好代码中

$(window).bind('hashchange', function () {
                 //code here
});

答案 2 :(得分:-1)

在这种情况下使用live

$(document).ready(function()
{   
   $(selector).live(hashchange, function(){
    // your code goes here

    });
});