這個問題在這里已經有了答案: TypeError: $ is not a function WordPress (12 answers) 58 分鐘前關閉。
我正在 Wordpress 中構建一個網站,需要向串列項內的錨元素添加一個類。串列項具有唯一 ID。我需要添加的類將使我在錨鏈接上平滑滾動。
我不想改變主題,這就是為什么我想用 JavaScript 或任何更好的技術添加一個類。
這是我嘗試過但不起作用的方法:
$('li#menu-item-318').find('a').addClass('fl-scroll-link');
我的控制臺出現此錯誤:
TypeError: $ is not a function. (In '$("#menu-item-318 a")', '$' is undefined) Error: {}
這是我網站上的具體代碼:
<nav class="top-bar-nav"><ul id="menu-topbalk"><li id="menu-item-318"><a href="#contactgegevens" class="nav-link">Contact</a></li></ul></nav>
所以上面的一個標簽需要得到這個第二個類:fl-scroll-link,這樣就會得到這樣的結果:
<a href="#contactgegevens" class="nav-link fl-scroll-link">Contact</a>
我每天都在學習,可以使用你的幫助。請解釋您提出的解決方案。
// 解決方案 //
非常感謝大家,我們一起成功了!萬歲!
所以我犯了兩個錯誤:
- 我在找一門課,但當然應該找一個身份證。
- Wordpress 使用 jQuery 而不是 $!
作業代碼是:
jQuery(document).ready(function($) {
$("#menu-item-318 a").addClass("fl-scroll-link");
});
再次感謝,我很高興!
uj5u.com熱心網友回復:
您的串列項(或曾經)缺少閉包
<nav class="top-bar-nav">
<ul id="menu-topbalk">
<li id="menu-item-318"> <!-- missing ">" here -->
<a href="#contactgegevens" class="nav-link">Contact</a>
</li>
</ul>
</nav>
要將fl-scroll-link類添加到錨點,請使用該.addClass()方法。將此應用于<a>選單下方的所有子元素,如下所示。由于您已經在使用 jquery,因此我也使用了它。
jQuery(document).ready(function($) {
$("#menu-item-318 a").addClass("fl-scroll-link");
});
此外,如果您想通過其錨點 href 值實際訪問它,那么這里已經回答了另一個問題: How to get an element by its href in jquery?
在你的情況下:
jQuery(document).ready(function($) {
$('a[href="#contactgegevens"]').addClass("fl-scroll-link");
});
關于“$”未定義的錯誤訊息意味著您的 jquery 庫沒有被加載。您需要確保在站點加載 jquery 之后添加您的自定義 javascript... 或以下是向該<a>標記添加類的純 javascript 方式。
document.querySelector('a[href="#contactgegevens"]').classList.add("fl-scroll-link");
或者如果您想將該類應用于<a>串列項下的所有標簽。
document.querySelector('#menu-item-318 a').classList.add("fl-scroll-link");
- https://api.jquery.com/addclass/
- https://jsfiddle.net/3efhkbxa/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/480432.html
標籤:javascript jQuery WordPress 链接
上一篇:是否可以在for回圈中添加eventListener,如果可以,您將如何實作它?
下一篇:在物件中按屬性而不是值洗掉行專案
