2016-04-04 4 views
0

FIX: Я связался с неправильным сценарием, очень сожалею об этом.JavaScript не загружается?

У меня есть файл с файлом, связанным правильно (по крайней мере, я так думаю). Вот ссылка:

<script type="text/javascript" src="assets/js/menu.js"></script> 

Эта ссылка находится прямо перед тегом закрывающего тега. Я попытался разместить эту ссылку в главном разделе, но это не помогает.

Вот код JS, который находится в этом файле сценарий:

/* When the user clicks on the button, 
toggle between hiding and showing the dropdown content */ 
function myFunction() { 
    document.getElementById("myDropdown").classList.toggle("show"); 
} 

// Close the dropdown menu if the user clicks outside of it 
window.onclick = function(event) { 
    if (!event.target.matches('.dropbtn')) { 

    var dropdowns = document.getElementsByClassName("dropdown-content"); 
    var i; 
    for (i = 0; i < dropdowns.length; i++) { 
     var openDropdown = dropdowns[i]; 
     if (openDropdown.classList.contains('show')) { 
     openDropdown.classList.remove('show'); 
     } 
    } 
    } 
} 

Моего HTML:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <title>title</title> 


    <link rel="stylesheet" href="assets/css/main.css"> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 

    </head> 

    <body> 

    -Content- 

     <script type="text/javascript" src="assets/js/menu.js"></script> 

    </body> 

Этот сценарий для моего толчка правого меню на моем сайте.

Любая помощь, спасибо! : D

UPDATE: Я добавил предупреждение в скрипт, и это работает, но мое меню все еще не работает?

Меню HTML:

 <nav id="menu"> 
      <ul> 
       <li><a href="#">Contact</a></li> 
       <li><a href="#">About Us</a></li> 
       <li><a href="blog.html">Blog</a></li> 
       <li><a href="index.html">Home</a></li> 
      </ul> 
     </nav> 
+4

Пожалуйста, проверьте консоль браузера и скажите, есть ли у вас ошибка 404? –

+0

Вы можете добавить после закрытия тега тела, а не то, что он исправит, но это хорошая практика. Вы должны поставить 'alert()' в начале скрипта только для целей тестирования, возможно, это не загрузка из-за неправильной ссылки. – Phiter

+0

Загружает браузер файл сценария? Откройте для себя инструмент разработчика вашего браузера и проверьте сетевую вкладку «сеть». – fheck

ответ

0

различные браузеры обрабатывают события по-разному. поэтому вы должны использовать jQuery, потому что он заботится обо всех различиях для вас. Эта функция должна сделать это для вас в простой JS ..

function on(elem,eventType,handler){ 
    if (elem.addEventListener){ 
     elem.addEventListener (eventType,handler,false); 
    }else if (elem.attachEvent){ 
     elem.attachEvent ('on'+eventType,handler); 
    } 
} 

on(window, "click", function(e){ 
    // .. do stuff 
});