簡體   English   中英

流星每次刷新時如何使函數運行?

[英]How to make function run every time page refreshes in meteor?

我有以下代碼:

Template.home.onRendered(function() {
        var scrollElem = $("#scroll");
        scrollElem.scrollTo("max", 500);
})

我還使用流星的jquery-scrollto包。 頁面加載時僅觸發一次,但刷新時再也不會觸發。 我知道onRendered僅在元素更改時運行,但是那我應該使用什么呢? 我試圖將這段代碼放在Meteor.startup()和$(window).load()中,但是它也不起作用。 我通過添加setTimeout()函數來修復它,但是如果用戶的互聯網連接速度慢怎么辦? 它不會開火。 有什么解決辦法嗎?

如果尚未這樣做,請嘗試使用該軟件包的較新版本

您的#scroll元素可能尚未加載。 您可以嘗試使用load()方法:

Template.home.onRendered(function() {
        var scrollElem = $("#scroll");
        scrollElem.load(function () {
          scrollElem.scrollTo("max", 500);
        });
})

如果仍然無法使用,請嘗試直接使用插件,而不要使用純粹的中間流星軟件包。 卸載軟件包:

meteor remove johnantoni:meteor-scrollto

在您的頭代碼中,例如client / main.html

<head>
  <script src="//cdn.jsdelivr.net/jquery.scrollto/2.1.0/jquery.scrollTo.min.js"></script>
</head>

或者,如果您要將lib保留在您的應用程序中,請下載它並將其放在public / jquery-scrollto /中 ,然后放在頭部:

<head>
  <script src="/jquery-scrollto/jquery.scrollTo.min.js"></script>
</head>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM