簡體   English   中英

未捕獲ReferenceError:未定義$? 的jsfiddle

[英]Uncaught ReferenceError: $ is not defined? Jsfiddle

我是javascript的初學者,我使用jsfiddle創建了一個導航欄,當用戶向下滾動時出現。

當我將代碼復制到Dreamweaver時,它不再起作用?

我已經研究過,它說了有關添加jquery框架的內容或其他內容? 還是沒有框架就可以做到這一點?

鏈接到jsfiddle以獲取完整代碼: http : //jsfiddle.net/fNn7K/270/

javascript:

$(window).on('scroll', function () {
  console.log($(this).scrollTop());
   if ($(this).scrollTop() > 50) {
     $('.nav').addClass('visible');

   }else if ($(this).scrollTop() <= 50 && $('.nav').hasClass('visible')) {
      $('.nav').removeClass('visible');
   }

});

沒有jQuery,您可以執行以下操作:

window.onscroll = function() {
    var display = document.body.scrollTop > 150 ? 'inline' : 'none',
        elems   = document.getElementsByTagName('nav');

    for (var i=0; i<elems.length; i++) {
        elems[i].style.display = display;
    }
}

小提琴

當我將代碼復制到Dreamweaver時,它不再起作用?

JS Fiddle根據幾條用戶輸入的數據組裝頁面。 這些數據之一是選擇庫。

您必須將代碼復制到文檔中的正確位置,並包含相同的庫。

即使那樣,Dreamweaver的預覽模式也可能無法顯示,因為它們(或至少是)非常糟糕。 您是否在真實的瀏覽器中進行測試?

我已經研究過,它說了有關添加jquery框架的內容或其他內容?

您需要jQuery庫才能使用jQuery方法。

還是沒有框架就可以做到這一點?

jQuery只是其他人編寫的一些JavaScript。 您可以復制它所做的任何事情。 但是,逐行重寫代碼以不使用jQuery超出了stackoverflow答案的范圍。

您需要在代碼中添加jquery.js文件(dreamweaver)。

<head>標簽之間添加

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

在您提供的小提琴中,jquery已經加載了..所以您沒有收到該錯誤。

並且不要忘了將代碼包裝在document.ready函數中(同樣,已經在小提琴中添加了)。

 $(function(){
     $(window).on('scroll', function () {
       .....
     });
 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM