2013-10-11 222 views
1

我用Google搜索,檢查所有常見的反應。該腳本似乎是正確的順序(它們在the demo此相同的順序工作),但由於某種原因,當我試圖實現它,我得到錯誤。

我有一個paste bin我的整個頁面的代碼。但這是它的要點。

在我的頭:

<script src="http://code.jquery.com/jquery-1.10.0.min.js"></script>  <script src="picker/picker.js"></script> 
<script src="picker/picker.date.js"></script> 
<script src="picker/picker.time.js"></script> 
<script src="picker/legacy.js"></script> 
<script src="picker/main.js"></script> 

在我的身上:

<input id="" class="fieldset__input js__datepicker" type="text" placeholder="Choose Date"> 
<input id="" class="fieldset__input js__timepicker" type="text" placeholder="Choose Time"> 

當我剝一切了,除了這些部位,它工作正常。爲什麼這不起作用?

我的錯誤

[10:23:00.178] ReferenceError: $ is not defined @ https://www.nn.com/picker/picker.js:26 
[10:23:00.209] ReferenceError: Picker is not defined @ https://www.nnnr.com/picker/picker.date.js:23 
[10:23:00.223] ReferenceError: Picker is not defined @ https://www.nnnnnn.com/picker/picker.time.js:23 
[10:23:00.245] ReferenceError: $ is not defined @ https://www.nnnn.com/picker/main.js:30 
+1

使用jQuery,而不是在$您包含的js –

+0

試試jQuery('。js__datepicker')。pickadate();而不是$('。js__datepicker')。pickadate(); – Aaron

+0

http://stackoverflow.com/questions/4538994/jquery-is-not-defined?rq=1 –

回答

2

如果您運行的是https域,則您的包還需要來自https域。

<script src="https://code.jquery.com/jquery-1.10.0.min.js"></script> 

而且,如果您的網站既可以是http和https,也可以使協議相對,以便它自動切換到需要的任何地方。

<script src="//code.jquery.com/jquery-1.10.0.min.js"></script> 

然而要注意使用協議相對的,如果你正在運行從網絡服務器的代碼只能(其中,要誠實,要始終如此。)

+0

酷,我不知道你可以離開協議..這是https! thankks –

0

嘗試換你的函數是這樣的:

(function($){ 
$(whatever).click(function(){ alert('this should be working');}) 
})(jQuery) 

,或者你可以嘗試添加

var $ = jQuery 

你的JS文件

的頂部
+1

請注意,'var $ = jQuery'可能會破壞您代碼的其他部分。 –