如何在布局渲染后初始化jQuery对象?
我想定义一些变量,用于在我的应用程序布局渲染后立即调整我的jQuery选择器的范围。
我尝试用以下方法定义它们:
Meteor.startup(function () { /* Define variables */ })
但它没有用,对象是空的
这是我如何声明我的应用程序布局:
Router.configure({ layoutTemplate: 'layout' });
这是布局本身:
{{> yield}}
以下是我愿意声明的变量:
L.BODY = $("body"); L.PC = $("#page_content", L.BODY);
声明本身工作正常,但是当我尝试声明这些变量时, L.BODY
显示我的应用程序的主体仍然是空的。
一旦我的应用程序的布局呈现,我如何定义jQuery对象?
layout
只是另一个模板。 jQuery需要存在DOM元素才能创建一个对象。
从那里onRendered
回调是要走的路:
Template.layout.onRendered(function() { L.BODY = $('body'); L.PC = $('#page_content', L.BODY); });