2012-11-24 27 views
1

我正在使用gem在網站上實現事件日曆。這是event_calendar gemEvent_calendar gem no method'observe'

我收到以下錯誤鉻:

Event.observe(window, "load", function() { 

任何想法,什麼是錯的:

Uncaught TypeError: Object function Event() { [native code] } has no method 'observe' 

它在event_calendar.js的6線產生的?


我有一個叫事件模型,所以我懷疑它可能以某種方式與JS會干擾,但我無法找到我的代碼的任何地方。

我覺得奇怪的是,事件日曆適用於事件和所有事件。這可能是重複的問題嗎?再一次,我找不到任何跡象。

回答

2

對不起,我可能會有點晚,我剛剛遇到同樣的問題,並設法解決這個錯誤。

event_calendar gem爲不同的Javascript庫實現了一些不同的實現。 默認情況下,當您運行

rails generate event_calendar 

它不會產生,您的Rails應用程序是最有可能使用jQuery的實現。

Event.observe模式是一個prototype.js函數。除非您的rails應用程序在event_calendar gem之前包含prototype.js,否則它將會中斷。

解決您的問題,如果你正在使用jQuery作爲默認的JavaScript庫,你可以運行

1. rails generate event_calendar --use-jquery 

2. then replace the app/assets/javascripts/event_calendar.js with the generated public/javascripts/event_calendar.js. 

希望它能幫助。