【发布时间】:2015-02-16 05:14:09
【问题描述】:
我有一个场景,我想测试一个页面的四个不同版本,每个版本都在 HTML 头部部分加载不同的 javascript 内容。
我想在模板之间切换以表现出好像页面已重新加载、清除状态并重新运行 HTML 文件的头部和正文中的 JS。
我可以使用四个不同的 Meteor 模板来做到这一点吗?
【问题讨论】:
我有一个场景,我想测试一个页面的四个不同版本,每个版本都在 HTML 头部部分加载不同的 javascript 内容。
我想在模板之间切换以表现出好像页面已重新加载、清除状态并重新运行 HTML 文件的头部和正文中的 JS。
我可以使用四个不同的 Meteor 模板来做到这一点吗?
【问题讨论】:
我这样做的方法是从模板的 onRendered 方法中将 JS 附加到头部,如下所示:
Template.templateName.onRendered(function() {
$('head').append("insert your script here");
});
所以我会保留默认的 head 没有任何这些 js 文件,并根据用户使用的模板添加它们。您还可以在 onRendered 方法中操纵用户体验,使用 $(window).scrollTop(0) 之类的东西使其看起来好像页面已刷新。
【讨论】: