我正在尝试使用document.querySelector(“body”),但我没有得到任何html元素。
为什么这样,我的脚本调用是在meteor.startup中?
我正在使用铁路由器进行路由...
if(Meteor.isClient){
Meteor.startup(function(){
myScript()
})
}
答案 0 :(得分:0)
Meteor.startup只能在DOMContentLoaded事件之后触发。但IronRouter可能会在之后呈现内容。
尝试使用IronRouter的onAfterAction挂钩或模板的rendered callback
答案 1 :(得分:0)
我最终这样做了:
Template.masterLayout.rendered = function(){
myscript = myScriptJS()
}
这在my iron router layout的.rendered方法中调用myScriptJS()。执行myScriptJS并将其分配给全局变量(myscript),因为myScriptJS是一个将对象返回到其命名空间的模块模式。
现在我可以在任何地方使用此代码:
myscript.counter()