2016-12-27 2 views
1

Ich habe diese Antwort https://stackoverflow.com/a/5224638/7346441 verwendet, um zu überprüfen, ob eine externe Website entweder online ist oder nicht. Und es funktioniert gut.JSHint W030 Nachricht in Javascript ist seltsam

Aber wenn ich laufe JShint ich die W030 Nachricht auf der Leitung 5 und 8 erhalten:

function ifServerOnline(ifOnline, ifOffline) { 
    if ($('span#OfflineCheckClass').length > 0 && $('span#OfflineCheckerURL').length > 0) { 

     var img = document.body.appendChild(document.createElement('img')); 
     img.onload = function() { 
      ifOnline && ifOnline.constructor === Function && ifOnline(); 
     }; 
     img.onerror = function() { 
      ifOffline && ifOffline.constructor === Function && ifOffline(); 
     }; 
     img.src = $('#OfflineCheckerURL')[0].innerHTML; 
    } 
} 

und die Funktion:

ifServerOnline(function() { 
    // just continue 
}, 
function() { 
    var offlineMessageClass = $('#OfflineCheckClass')[0].innerHTML; 
    var offlineTekst = document.getElementsByClassName(offlineMessageClass); 
    offlineTekst[0].innerHTML = $('span#OfflineCheckerTekst')[0].innerHTML; 
}); 

Was ist falsch?

Antwort

1

JSHint nicht mag Ausdruck Aussagen wie

ifOnline && ifOnline.constructor === Function && ifOnline(); 

Wenn Sie die Sache glücklich machen wollte, Sie, dass

if (ifOnline && ifOnline.constructor === Function) { 
    ifOnline(); 
    } 
zu

ändern könnte