我是JavaScript的新手,我在獲取自定義函數以在Rails 5應用程序中工作時遇到問題。我正在嘗試添加一個簡單的函數,該函數在引導導航欄標題中設置活動鏈接。我在密碼筆中得到了所有工作,但是當我將其添加到我的Rails應用程序中時,它不起作用。我知道javascript正在運行,因為我正在使用bootstrap并且這些函數可以正常工作。我還認為腳本是通過檢查Chrome開發人員工具中的源代碼來加載的,它就在那里。但是,設置斷點永遠不會被觸發。我已經閱讀了大約30個類似的問題,但沒有一個幫助解決我的問題,所以我真的希望有人能讓我克服這個障礙。這是我寫的代碼:斷續器<nav class="navbar navbar-light bg-light navbar-expand-md fixed-top header-bg"> <%= link_to image_tag(asset_path('jungers_farm/jungers_logo.png'), width: '50', height: '50'), root_path, class:'navbar-brand col-4 menu-brand' %> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-list-2" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbar-list-2"> <ul class="navbar-nav justify-content-center" id="main-nav-list"> <li class="nav-item"> <%= link_to 'Home', root_path, class: 'nav-link active' %> </li> <li class="nav-item"> <%= link_to 'Training', page_path('training'), class: 'nav-link' %> </li> <li class="nav-item"> <%= link_to 'Breeding', page_path('breeding'), class: 'nav-link' %> </li> </ul> </div></nav>Javascript$('.navbar-nav .nav-link').click(function(){ $('.navbar-nav .nav-link').removeClass('active'); $(this).addClass('active');})這是代碼筆,表明它在該環境中工作,以及我試圖完成的任務。密碼筆更新所以,我最初的問題是,由于turbolinks,代碼沒有在DOM之后加載。我添加了以下代碼,現在它正在運行。$( document ).on('turbolinks:load', function() { ... original code ...})但是,代碼沒有像我的代碼筆中那樣運行。活動鏈接未按預期更改。無論單擊哪個鏈接,最初標記為活動狀態的鏈接都將保持活動狀態。我丟失的頁面還有其他加載問題嗎?
自定義 javascript 函數在帶有 Turbolinks 的 rails 5 中不起作用
狐的傳說
2022-09-02 16:10:07