原文: https://feiffy.cc/uncaught-typeerror-cannot-convert-object-to-primitive-value
最近發現我的博客頁面移動端上下拉菜單失效了,調試了一下,只要一點擊下拉菜單就會報這個錯誤:
下拉菜單使用 bootstrap,部分代碼如下:
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav ml-auto"> <li class="nav-item "> <a class="nav-link" href="/program">編程技術</a> </li> <li class="nav-item "> <a class="nav-link" href="/tips">折騰筆記</a> </li> <li class="nav-item "> <a class="nav-link" href="/about">關於</a> </li> </ul> </div>
我百思不得其解,這里的代碼已經很久沒有修改過了,怎么會突然報錯呢?又對比了一下 bootstrap 上的折疊導航欄示例代碼,發現是沒有問題的。
。。。
搜索了一下,發現有人已經提了這個問題:
- https://stackoverflow.com/questions/61177140/uncaught-typeerror-cannot-convert-object-to-primitive-valuezone-evergreen-js1
- Bootstrap v4.4.1 collapse doesn't work with jQuery v3.5.0
終於找到了原因 可能是最近發布的 jQuery 3.5 導致的問題,jQuery 3.5 會導致 bootstrap 4 collapse 的功能失效。
解決 那么把依賴換成上個版本 jQuery 3.4.1,就可以臨時解決問題了。
看了引入jQuery的地方:
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js"></script>
改為以下就可以了。
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery@3.4.1/dist/jquery.min.js"></script>
- 文章鏈接: https://feiffy.cc/uncaught-typeerror-cannot-convert-object-to-primitive-value
- 版權聲明: 本博客所有文章除特別聲明外,均采用 CC BY-NC-SA 4.0 許可協議。轉載請注明出處!