[英]Jquery qtip “is not a function” - Ruby on Rails
我正在嘗試讓qtip與rails FullCalendar一起使用,但是在設置qtip時無法克服錯誤“ is not a function”。 我只是回到Jquery / Rails,顯然這通常是一個js文件加載問題。 但是,似乎js文件已正確加載(以正確的順序並且只能加載一次)。 這是(一些)我的js文件:
<script src="/assets/jquery.self-d03a5518f45df77341bdbe6201ba3bfa547ebba8ed64f0ea56bfa5f96ea7c074.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery_ujs.self-8e98a7a072a6cee1372d19fff9ff3e6aa1e39a37d89d6f06861637d061113ee7.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery.qtip.self-c86ab2c0151d0748df498fc4603ec759f565e7966405872bad084728da15c92c.js?body=1" data-turbolinks-track="true"></script>
在我看來,js文件已正確加載。 我現在將日歷放在application.js中:
//= require jquery
//= require jquery_ujs
//= require jquery.qtip.js
$(document).ready(function(){
$("#calendar").fullCalendar({
eventSources : [{
url: 'url_to_get_data'
}],
eventLimit: true,
eventRender: function(event, element) {
element.qtip({
content: event.description
});
}
});
});
我直接從FullCalendar的eventRendering部分提取了這個eventRender
示例。 即使我嘗試在input
上input
qtip,這也行不通。
有人看到明顯的錯誤嗎?
最終只是自己解決了這個問題,因此想將答案發布給遇到相同問題的任何人。 事實證明,我必須下載Qtip .js文件並將其放置在資產/ javascript中,並且仍將其包含在application.js文件中。 我想我誤以為Rails會為我做這件事。
不確定是否重要,但是我的require語句的順序如下所示:
//= require jquery2
//= require jquery_ujs
//= require moment
//= require fullcalendar
//= require jquery.qtip.js
最后一件事-我確實不得不修改原始示例中的代碼。 這是我修改后的代碼,檢查空值:
$(document).ready(function(){
$("#calendar").fullCalendar({
eventSources : [{
url: 'url_to_get_data'
}],
eventLimit: true,
eventRender: function(event, element) {
if (element && event.description) {
element.qtip({
content: event.description,
hide: {
fixed: true,
delay: 500
}
});
}
},
eventClick: function(calEvent, jsEvent, view) {
// Open in new window
url = window.location.href;
window.open(url + "/" + calEvent.id);
},
eventMouseover: function(event, jsEvent, view) {
// Todo
},
eventMouseout: function(event, jsEvent, view) {
// Todo
},
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.