2017-06-20 43 views
-5

我的JavaScript文件不起作用。我在檢查員看不到它。我認爲它根本不加載。我的JavaScript文件未加載。 (Drupal7)

我的文件中缺少某些東西?

這是我的整個js文件:

$(document).ready(function(){ 

$(".sf-main-menu li").click(function() { 



    /* Add the slider movement */ 

    // what tab was pressed 
    var whatTab = $(this).index(); 

    // Work out how far the slider needs to go 
    var howFar = 160 * whatTab; 

    $(".slider").css({ 
    left: howFar + "px" 
    }); 


}); 

}); 

我把它添加到.info文件。

該代碼應該工作,我從codepen得到它。我認爲文件中可能缺少某些聲明,如html中的doctype。

(此代碼移動滑塊(這是下的菜單項行)

DOM: enter image description here

+1

你是怎麼在你的html中包含這個的?你在這之前包含了jQuery嗎?什麼是_.info_文件? – Sankar

+0

你好,請嘗試寫一個更重要的標題來增加對周圍人的興趣。我還建議你改進描述,增加你的案例的重要細節。例如,您已經完成的檢查,您認爲代碼應該做什麼以及何時執行。 –

+0

@Sankar拉傑我添加了這個js文件到信息文件(在drupal7)的HTML其他jquery我做的工作 – Ayala

回答

0

我解決了! :)

我寫道:的

jQuery(function ($) { 

代替

$(document).ready(function(){ 

現在正在工作。

(我不確定爲什麼我的問題有這麼多的減點...)

0

第一個問題,是jQuery的加載以前生產的腳本

第二,你應注意什麼?它包裝在一個document.ready

$(function() { 
    $(".sf-main-menu li").click(function() { 
    ... 
    }); 
}); 

這將檢查如果整個DOM被加載,因爲otherwi se很有可能你將一個事件監聽器綁定到一個尚不存在的DOMNode。

+0

我修改我的帖子,如你所說。和我的代碼,但它不起作用。在腳本之前加載jquery的 ?我應該怎麼知道? – Ayala