Jquery mobile jquery mobile backbone.js路由

Jquery mobile jquery mobile backbone.js路由,jquery-mobile,backbone.js,Jquery Mobile,Backbone.js,我有一个backbone.js/jquery移动应用程序: 当我访问mydomain.com/#map时,jquery执行“/”并加载#map 由于首先触发“/”,因此将加载所有backbone.js脚本,包括我的map-controller.js(“map”:“functionForMapRoute”)中的backbone.js路由。 由于URL包含/#map,因此在jquery mobile呈现dom之前会触发backbone.js路由“map” 因此,“functionForMapRout

我有一个backbone.js/jquery移动应用程序:

当我访问mydomain.com/#map时,jquery执行“/”并加载#map

由于首先触发“/”,因此将加载所有backbone.js脚本,包括我的map-controller.js(“map”:“functionForMapRoute”)中的backbone.js路由。 由于URL包含/#map,因此在jquery mobile呈现dom之前会触发backbone.js路由“map”

因此,“functionForMapRoute”无法对div进行操作,因为此时DOM没有完全加载


如何确保在DOM完全加载之前不会触发“映射”路由?

例如,使用与jquery mobile更集成的工具(可以在github上找到)。它取代了主干路由器,将与jquery mobile和backbone.js或spine.js一起使用,我也遇到了同样的问题,下面是避免使用jquerymobile路由器的解决方案:

我发现如果在主干路由器中不使用“/”就可以了

e、 g:

使用

而不是这个

"category/id/:id": "category"
我想这就是为什么他们在官方教程中使用相同的概念:p


pageshow:jqm旨在与主干网一起使用。在另一个路由设施中混合使用js无法支持该解决方案。
"category/id/:id": "category"
"category?:type": "category"