2013-02-27 40 views
5

Tôi đang làm việc thông qua các ví dụ trong chương 8 của Hướng dẫn Ruby on Rails và tôi nhận được lỗi trên trên các trang của tôi, và trình đơn thả xuống của tôi không hoạt động. Bất kỳ ý tưởng về cách tôi có thể sửa lỗi này?Uncaught TypeError: Không thể đọc thuộc tính 'webkit' của undefined

/* =================================================== 
* bootstrap-transition.js v2.0.0 
* http://twitter.github.com/bootstrap/javascript.html#transitions 
* =================================================== 
* Copyright 2012 Twitter, Inc. 
* 
* Licensed under the Apache License, Version 2.0 (the "License"); 
* you may not use this file except in compliance with the License. 
* You may obtain a copy of the License at 
* 
* http://www.apache.org/licenses/LICENSE-2.0 
* 
* Unless required by applicable law or agreed to in writing, software 
* distributed under the License is distributed on an "AS IS" BASIS, 
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
* See the License for the specific language governing permissions and 
* limitations under the License. 
* ========================================================== */ 


!function($) { 

    $(function() { 

    "use strict" 

    /* CSS TRANSITION SUPPORT (https://gist.github.com/373874) 
    * ======================================================= */ 

    $.support.transition = (function() { 
     var thisBody = document.body || document.documentElement 
     , thisStyle = thisBody.style 
     , support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined 

     return support && { 
     end: (function() { 
      var transitionEnd = "TransitionEnd" 
      if ($.browser.webkit) { 
Uncaught TypeError: Cannot read property 'webkit' of undefined 
      transitionEnd = "webkitTransitionEnd" 
      } else if ($.browser.mozilla) { 
      transitionEnd = "transitionend" 
      } else if ($.browser.opera) { 
      transitionEnd = "oTransitionEnd" 
      } 
      return transitionEnd 
     }()) 
     } 
    })() 

    }) 

}(window.jQuery); 

Trả lời

10

Nâng cấp đá quý bootstrap-sass của bạn lên phiên bản mới nhất bằng cách cập nhật Gemfile của bạn với các dòng:

gem 'bootstrap-sass', '~> 2.3.0.1' 

Tôi đã có vấn đề và đó là vì tôi đang chạy phiên bản 2.0.0 đó đá quý. Bạn không chắc chắn họ nên chạy phiên bản nào trong hướng dẫn này, nhưng việc nâng cấp lên phiên bản mới nhất không làm bạn đau.

+0

Làm việc cho tôi quá (Sau khi khởi động lại máy chủ) – nicolaspanel

13

Vấn đề tôi nghĩ là ở đây: $.browser.webkit - dường như $ .browser đã bị xóa trong jQuery 1.9+.

Theo this thread không có thay thế trực tiếp, tuy nhiên bằng cách sử dụng this plugin bạn sẽ có thể khôi phục chức năng của thẻ đó.

Các vấn đề liên quan