在Sencha中没有触发历史'hashchange'

时间:2011-02-21 15:00:55

标签: javascript html5 javascript-events extjs

我在以下场景中使用Ext Sencha框架:

Ext.History.init()
Ext.History.on('change', function() { alert('zomg change!!11') }
Ext.History.add('zomg-token')

但是,由于.add()方法中的以下检查,上面的代码在兼容HTML5的浏览器(在Chromium上测试)中不起作用:

add: function(token) {
    window.location.hash = this.setToken(token);

    if (!Ext.supports.History) { // <- this prevents the firing off of the event
        this.onChange();
    }
}

我只是想知道它背后是否有任何基本原理,因为在History类中似乎没有包含原生'hashchanged'事件绑定的方法。

我希望避免直接使用本机API,而是让它很好地包含一些lib,这为HTML4浏览器提供了工作性降级,但目前Sencha框架似乎并非如此。

如果您知道如何使其发挥作用,请告诉我。

1 个答案:

答案 0 :(得分:0)

看起来我正在使用该框架的一些测试版,构建时对历史的支持不完整。目前v1和v2开发人员预览4似乎都运行得很好。