2016-12-01 21 views
0

我使用Bootstrap 3,jquery和自定義CSS來管理一些HTML文件。我試圖將這些代碼放入我的Meteor應用程序中,我遇到的問題是如何以與Meteor一起使用的方式加載CSS和HTML。例如,這裏是一些我想加載到我的模板中的腳本。什麼是Meteor加載外部JS,CSS和更新文檔的方式?

<script type="text/javascript" src="{{rooturl}}/assets/js/smoothscroll.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/bootstrap-select.min.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/jquery.hotkeys.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/jquery.nouislider.all.min.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/jquery.mCustomScrollbar.concat.min.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/infobox.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/richmarker-compiled.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/markerclusterer.js"></script> 
    <script type="text/javascript" src="{{rooturl}}/assets/js/custom.js"></script> 

我開始簡單的包含這在我的模板的頭,似乎大部分工作,但我得到了錯誤的行爲。裏面custom.js的我做我的大部分設置的

$(document).ready(function($) {})

內例如設置自己的時間選擇

// Timepicker --------------------------------------------------------------------------------------------------------- 

    if($('.oh-timepicker').length > 0) { 
     $('.oh-timepicker').timepicker(); 
    } 

    $('.item .quick-view').on('click',function (e) { 
     e.preventDefault(); 
    }); 

我的問題是,我究竟做錯了什麼?什麼是適當的流星方式來添加js和CSS以一定的順序到您的HTML。

此外,它似乎在一個Autoform的網頁上,它只是不斷重新加載自己。我很困惑如何更新DOM,而不觸發meteor重新加載頁面。這是我第一次使用流星,我想這可能是錯誤的選擇,因爲我不需要反應模板。

回答

0

包括這樣的文件不是流星的方式,這就是爲什麼行爲不穩定。

使用此功能可以包括jQuery的:

https://atmospherejs.com/meteor/jquery

還有其他的程序包上的氣氛太。包含的順序由流星來管理。

+0

如何處理沒有流星包的腳本,以及我準備在文檔準備好時調用哪些代碼? – user379468

+0

Meteor.startup在文檔就緒或設備準備就緒時調用。您可以將腳本放置在客戶端文件夾或子文件夾中,或者具有導入文件夾並顯式導入那些適用於css,html和js的文件 – Mikkel