流星启动JQuery DOM元素未准备好(JQueryUI Draggable)
Meteor Startup JQuery DOM Elements Not Ready (JQueryUI Draggable)
在Meteor文档中,它说Meteor.startup
将在DOM和所有模板被处理后被调用。但是,我在Meteor.startup
中的代码表现得好像DOM元素不存在。
In .js:
Meteor.startup(function () {
console.log($('.draggable').length);
});
. html :
<template name="item">
<div class="draggable ui-widget-content">
</div>
</template>
在控制台中我看到:
0
但是在页面上我可以看到我的项目。事实上,如果我包括我的JQuery在Template.item.rendered
或在mouseover
事件,我得到数组的正确长度。那么为什么startup
函数没有准备好使用我的DOM元素呢?
我猜你的代码看起来像这样,但让我知道,如果我错了:
<template name="list">
{{#each items}}
{{> item}}
{{/each}}
</template>
{{#each ...}}
助手使用游标对象来响应游标上的数据更改。因此,在您的情况下,如果数据来自服务器(例如订阅),在流星的时候。启动时,数据可能尚未加载。所以一开始你的列表是空的。然后,当数据从网络传出时,将为每个数据项呈现一个新的item
模板。如果你想让一个特定的项目可拖动,你可以把jQuery代码放在Template.item.rendered
回调中。
这有帮助吗?
相关文章:
- 根据选项卡内部的文本链接中的哈希ID动态选择jqueryUI选项卡
- 如何在多个jQueryUI日期选择器中屏蔽特定日期
- jQueryUI Progress Bar
- 如何使用jqueryui进度条
- 将数据输入到draggable无法工作
- jquery UI draggable:UI.children不是一个函数
- 通过DRAGGABLE将一个DIV移动到另一个DIF下?(CSS,JQuery)
- Jquery Draggable-在浏览器刷新时保持位置
- jQuery Draggable:内存泄漏
- JqueryUI对话框没有'不能使用特定的输入名称
- JQueryUI选择菜单-如何添加更多选项
- jqueryui的轻量级替代品,可在angular项目中选择
- jQuery UI draggable:绑定到mousemove事件中的对象
- Jqueryui多选d&d安全壳
- 在jqueryui中更改关键字using
- 从数据库填充JQueryUI
- 如何使jqueryui小部件可拖动
- jQueryUI-将draggable移回原始位置,即使在放入dropable之后也是如此
- 如何在if语句中打开/关闭JQueryUI Draggable
- 流星启动JQuery DOM元素未准备好(JQueryUI Draggable)