使DerbyJS只重新渲染某些DOM节点

DerbyJS( http://derbyjs.com )目前似乎能够工作的方式是,只要您点击一个链接,它就会replace文档正文标签中的所有内容。

有没有反过来说使用模板,而是用#而不是整个身体来代替#主要内容的内容?

左侧导航是固定的,不需要实时交互的好处。

为什么这是一个问题,需要在页面加载上运行一些Javascript来根据用户浏览器窗口的大小设置一些容器的大小,一旦我点击一个链接,这个设置就会被擦除和重新创build,当然, Javascript不会再运行,因为文件本身并没有刷新,只是正文。

这也可以让我写大部分更好的jQuery绑定, $('element').click( ,而不是$('html').on('click','element', ...

任何想法,或者在这个时候对于这个框架来说这个步骤太过分了?

PS因为我只是刚刚开始使用Derby,而且一般的实时框架,或许我想要做的不是最好的练习呢? 我select了Derby,因为我喜欢在服务器上初始渲染的UX部分,其余部分在客户端,但共享路由器,这减less了代码的重复。 打开任何更好的方式来实现这一目标。

在重新加载页面时,没有办法重新渲染部分内容。 只是整个身体。

你可以使用app.enter hook来在每次页面渲染后运行js代码。

不需要使用jQuery绑定,使用Derby绑定

我完全同意弗拉基米尔的答案,只是想增加一些东西。

应该可以通过过渡路线( http://derbyjs.com/#routes )重新渲染部分UI。 在你的情况下,似乎app.enter是要走的路。