2015-05-30 20 views
5

Aşağıdaki jQuery kodu JSLint uyumlu hale getirmeye çalışıyorum.JSLint - 'jQuery' bildirilmemiş 'uyarı' uyarısı

(function ($) { 
    "use strict"; 
    $('.addition').click(function() { 
     $('.textbox:last,.addition:last,.subtraction:last,.replace:last').clone(true).appendTo('.replace:last'); 
     $('.textbox:last').val(""); 
     $('.addition:not(:last),.subtraction:not(:last)').attr('disabled','true'); 
    }); 

    $('.subtraction').click(function() { 

     if($('.replace').length === 1) { 
      $('.subtraction').click(function (event) { 
       event.preventDefault(); 
      }); 
     } else { 
      $('.textbox:last,.addition:last,.subtraction:last,.replace:last').remove(); 
      $('.addition:last,.subtraction:last').removeAttr('disabled'); 
     } 
    });  
}(jQuery)); 

Kodum düzgün çalışıyor. Sadece JSLint uyarılarını temizlemeye çalışıyorum. JSLint'in neden }(jQuery)); hattında (son satır) undeclared 'jQuery' uyarısı verdiğini anlamıyorum. Küresel bir değişken uyarı temizlenmiş olduğu gibi jQuery bildirme

GÜNCELLEME
. Eğer jslint.com kullanıyorsanız

+0

olası yinelenen JQuery üzerinde?] (http://stackoverflow.com/questions/3920012/how-can-i-use-jslint-for-a-segment-of-code-which-depends-on-jquery) –

cevap

8

, size jslint.com kullanıyorsanız seçenekleri

+0

Teşekkürler. Bu uyarıyı temizledi. Bunun neden gerekli olduğunu biliyor musun? – user3421311

+0

np ... jslint, kodları varsayımlar olmadan veya seçenekler bölümünde ayarlamadıkça hangi değişkenleri genel olarak ayrıştırır. –

+0

@ user3421311 JSLint'e hangi değişkenlerin başka bir kapsamdan geldiğini söylemezseniz, bir şeyi doğru şekilde beyan etmediğinizi varsaymanız gerekir. Yani, JSLint her seferinde bir dosyaya gider ve eğer "var spam =" ham ";", sapm = "baharatlı jambon", "bir yazım hatası" veya "sapm" ise, arasındaki farkı söyleyemez. Bir ana kapsamdan - siz söyleyemezseniz * ve * programcılarınız. İşte bu yüzden yararlıdır. Daha belirgin olmak için – ruffin

0

altında Küresel değişkenlere jQuery eklemeniz gerekir, Kodunuzun 1 satırını değiştirmeniz gerekiyor. Bir yorum satırı olarak "global jQuery" eklemeniz gerekiyor.

yerine .. Buraya bakın: (function ($) {

kullanarak: /* Küresel jQuery */
jQuery (function ($) { .....

Tüm iyi.
Puspendu Mondal

Ben bağımlı bir kod segment için jslint nasıl kullanabilirim [ait