Tag: meteor

如何检测Meteor JS中整个文档的事件?

它真的很简单。 我目前在我的模板事件中,但它不起作用: ‘keyup’: function(event) { event.preventDefault(); console.log(“KEYUP”); } 更新:它似乎是框架中的一般错误。 我很感激,如果有人可以分享我可以使用的手动黑客,不涉及使用别人的包。 更新2:我已经解决了这个问题,如下所示。

如何在Meteor JS中集成TinyMCE和CKEditor?

我想在我的项目中使用CKEditor或TinyMCE编辑器。 所以我把TinyMCE文件夹放在meteor公共文件夹中,也放了 <script type="text/javascript" src="/tinymce/tinymce.min.js”> tinymce.init({ selector: “textarea” }); 在模板头标记。 但是收到以下错误。 资源解释为脚本但使用MIME类型text / html传输: “http://localhost:3000/%3Cyour%20installation%20path%3E/tinymce/tinymce.min.js”. (index):97 “http://localhost:3000/%3Cyour%20installation%20path%3E/tinymce/tinymce.min.js”. (index):97 Uncaught SyntaxError:意外的标记<tinymce.min.js:1未捕获的ReferenceError:未定义tinymce 我该如何解决这个问题? 它与CKEditor相同。 有没有其他丰富的编辑器,我可以在Meteor JS中使用它?

更新meteor模板后运行function

我有一个meteor模板渲染一些我需要执行jquery函数的html。 现在,我已经设置了一个依赖项,这样每次绑定到该模板的数据(对象列表)都会发生变化时,该函数就会运行。 我不确定这是我正在尝试做的最好的方法,但每次添加/删除/重新排列对象时它都会运行该function,所以这是一个开始。 但是 ,该函数似乎在重新呈现模板之前正在运行,因此前一组块得到了jquery-fied,但是我刚刚在该操作上添加的任何块都没有。 有没有办法强制函数在呈现/更新模板后运行? 任何帮助深表感谢! (类似的问题在这里 – meteor反应jquery – 但它没有任何答案) 以下是一些可能相关的代码位: Template.showPictures.rendered = Deps.autorun () -> album = Albums.findOne(Session.get(“selectedAlbum”)) if (album) pictures = album.orderedPictures() MyApp.loadJQuery() Template.showPictures.helpers pics: -> MyApp.myDependency.depend() album = Albums.findOne(Session.get(“selectedAlbum”)) album.orderedPictures() (为什么我的Template.rendered中的自动运行?不确定。这似乎是一个好的地方,但这是我第一次真正处理依赖关系,所以我可能完全偏离这里。任何想法出了什么问题会很棒。)

禁用向右滑动到Windows Phone上的上一页

我正在尝试使用http://wipetouch.codeplex.com/在Meteor应用程序上实现滑动以在Iron Router中的模板之间切换。 它在iOS和Android上运行得非常漂亮,但在Windows Phone上,操作系统的本机滑动手势(在浏览器中向右滑动会在历史记录中移动一页)会干扰用户的滑动操作。 有什么方法可以禁用它吗? 还有哪些其他平台具有类似的function,可以防止用户有效地在Web应用程序中滑动? 作为示例, 此应用程序还使用相同的库来实现滑动手势。 注意:在body标签上使用touch-action:none不起作用。

Meteor渲染回调并应用jQuery插件

在将jQuery插件(如滑块或同位素)应用于从Meteor加载动态内容的DOM元素集合时寻找模式。 如果你调用template.rendered ( doc here )似乎是一个合乎逻辑的选择。 渲染模板时应用jQuery。 根据Blaze wiki template.rendered现在只调用一次。 听起来不错。 但是,它没有提到在将template.rendered的内容应用于DOM 之前调用template.rendered。 所以推荐的方法是将内部元素放入{{#each}}子模板,然后在rendered回调上调用jQuery。 但是:大多数jQuery插件不能以这种方式工作。 需要在父DOM元素上调用它们,并且子DOM元素需要已经就位。 有些人甚至建议在父元素上使用setTimeout来近似何时呈现子元素 。 这对我来说听起来不够可靠。 这是一个常见的例子: page_slider.html {{#each slide}} {{> slider_item}} {{/each}} page_slider.js Template.page_slider.rendered = function() { /* * Can’t initialise jQuery slider here as * all inner DOM elements don’t exist. * */ }; 看子模板。 slider_item.html slider_item.js Template.slider_item.rendered = function() […]

Meteor的滚动事件

我在meteor文档中找不到meteor的滚动事件。 当有人在meteor应用程序中滚动窗口时,我该怎么做? 我试过’scroll window’ : function(event) { … } ,它不能按预期工作。

使用meteor模板助手获取DOM元素

例如,我的HTML是 Click 在meteor模板助手中,我希望能够选择锚标记。 Template.atest.route = function() { console.log(this.data-test); }; 我不确定是否可以这样做,但当然,不能通过我尝试的任何方法来完成。 我知道有一种方法可以在模板实例中传递参数,但我不希望这样。 我希望能够选择模板实例所在的锚标记并对其执行某些操作。 感谢我能得到的任何帮助。

使用jquery库的Meteor Template.onRendered或Template.rendered?

我想使用选择(jquery库)和meteor,我只需要使用这段代码: $(‘#ship’).chosen(); 我尝试使用.onRendered,但我需要等待,如果我想让它工作 Template.createTradeForm.onRendered(function(){ //Strange bug, need to wait here or it doesn’t work.. setTimeout(function(){ $(‘#ship’).chosen(); }, 2000); }); 此解决方案的问题相同: Template.createTradeForm.rendered = function(){ //here again, I need to wait or it doesn’t work setTimeout(function(){ $(‘#ship’).chosen(); }, 2000); }; 这个问题还有其他解决办法吗? 这个setTimeout在这里并不是很好。 根据要求编辑我的助手 Template.createTradeForm.helpers({ ‘getShips’: function(){ return Ship.find() } });

MeteorJS:如何获得点击元素

我正在尝试获取单击的元素,以便我可以添加类。 Meteor是否提供了获取当前元素的任何方法,如jQuery $(this) Template.retraining.events({ ‘click .myclass’: function (event) { //Get the clicked element like $(this) in jQuery $().addClass(‘existing-col’); } });

在Meteor中,如何在表格中对某些计算字段进行求和?

我完全重写了这个问题,因为我取得了一些进展,我还需要进一步澄清。 通常 – 我想计算表的行和列总计,而不必重新计算每个单元格值两次。 让我解释。 我有一个集合,每个文档包含12个值。 对于每个doc,我需要对这12个doc值执行两个缓慢昂贵的计算,产生两个结果,然后在表中显示这两个结果。 然后我还需要每行上两个计算结果的总和,以及每列的所有计算结果的总和。 该页面如下所示: resa resb row1sum resa resb row2sum (etc) col1sum col2sum 并且模板的一部分可能如下所示: {{#each docs}} {{resa}} {{resb}} {{rowsum}} {{/each}} {{colsum1}} {{colsum2}} 对于每一行,我现在在游标助手中使用transform子句来生成结果和rowums。 docs: function() { return myCollection.find({},{transform: function(doc) { var resa = slowcalculation1(doc); doc.resa = resa; var resb = slowcalculation2(doc); doc.resb = resb; doc.rowsum = resa+resb; return doc; } […]