只是遊蕩,如果這是有道理的,使用jQuery的是否準備好文件函數中像下面的語句,以確保腳本只有在特定頁面上發射..使用if語句來分隔頁面相關代碼和jQuery有意義嗎?
if(window.location.href.indexOf("our-team")>= 0){
if(window.location.hash) {
var hash = window.location.hash;
$('#teamMembers div:not('+hash+')').hide();
$("#teamMenu .imgHolder").removeClass('active');
$('a[href='+hash+']').closest(".imgHolder").addClass('active');
}
else {
$('#teamMembers div:not(#member1)').hide();
}
}
這可能不是非常有效的,但是是如果當前頁面不包含我們的團隊在url中,則必須聲明停止腳本運行。
任何想法傢伙?
非常感謝,這已經爲我澄清了一些事情,我已經使用了替代方法,如。 'code'if($('#div')。length){ jQuery('#div')。functionName({// Stuff here });如果($(document.body).hasClass(「someClass」))'code'這個語句比這個更有效嗎? – madmatuk 2012-04-11 09:16:05
'if($(document.body).hasClass(「ourteam」))'非常有效,因爲沒有選擇器操作。 'document.body'是一個已知的對象,所以它只是從該已知對象中檢索一個屬性。 'if($('#div')。length)'可能並不壞,因爲在內部,它將是一個'document.getElementById(「div」)'這是一個選擇器操作,但是它是更快的操作之一。如果你想比較兩者的性能,你必須對許多瀏覽器進行基準測試。 – jfriend00 2012-04-11 09:27:27
太好了,謝謝你的解釋。 – madmatuk 2012-04-11 09:49:26