Необходимо выяснить, почему эта внешняя функция * .js не работает - PullRequest
0 голосов
/ 28 марта 2019

Я использовал код, найденный на веб-сайте, предоставленном моим преподавателем, и даже заставил его взглянуть на него, и тем не менее, мы понятия не имеем, что он не работает.С тех пор я использовал более простые 2 строки кода для вывода даты / времени, но я хотел бы понять это и заставить это работать.Буду признателен за помощь - также в первый раз пользователь, так что если что-то не так, как должно быть, извините

HTML-код

<p id="Date">Date and time will show here</p>

JS код

function dateAndTime() {
    var today = new Date();
    var day = today.getDay();
    var daylist = ["Sunday", "Monday", "Tuesday", "Wednesday                         ", "Thursday", "Friday", "Saturday"];
    console.log("Today is : " + daylist[day] + ".");
    var hour = today.getHours();
    var minute = today.getMinutes();
    var second = today.getSeconds();
    console.log("Current Time : " + hour + " : " + minute + " : " + second);
    //  var date = new Date();
    document.getElementById("Date").innerHTML = dateAndTime.toString();
}

Я должен отображать дату и время на экране, но я ничего не получаю, он даже не запускается.

Ответы [ 3 ]

2 голосов
/ 28 марта 2019

@ Грегори Скай Пожалуйста, используйте этот код. Поместите код Java Script внизу всего кода.

У вас есть элемент доступа в java-скрипте.

<body>
<span id="Date"></span>

</body>
<script>
dateAndTime(); 
function dateAndTime() {
    var today = new Date();
    var day = today.getDay();
    var daylist = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
    console.log("Today is : " + daylist[day] + ".");
    var hour = today.getHours();
    var minute = today.getMinutes();
    var second = today.getSeconds();
var dateTime=  "Current Day:"+daylist[day]  + " <br>    Current Date And Time :"+hour + " : " + minute + " : " + second;
    //  var date = new Date();
    document.getElementById("Date").innerHTML = dateTime;
}
</script>
0 голосов
/ 28 марта 2019

Как и другие говорят, что вы не запускаете функцию, поэтому она просто сидит там, будучи красивой.(Рефакторинг, кстати, помог бы этой функции красивее)

Каждая функция - не что иное, как кусок кода, ожидающий вашего вызова.

Проверьте этот jsBin Я не изменил его, но он работает, он работает.https://jsbin.com/nimubiqoma/1/edit?html,js,console,output

dateAndTime()
0 голосов
/ 28 марта 2019

Первая проблема заключается в том, что вы нигде не вызываете функцию, поэтому ниже я использовал функцию самозапуска, а вторая проблема заключается в том, что вы присваиваете определение функции для innerHTML, вместо этого вам должно быть показано ниже:

(function dateAndTime() {
    var today = new Date();
    var day = today.getDay();
    var daylist = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
    console.log("Today is : " + daylist[day] + ".");
    var hour = today.getHours();
    var minute = today.getMinutes();
    var second = today.getSeconds();
    console.log("Current Time : " + hour + " : " + minute + " : " + second);
    //  var date = new Date();
    document.getElementById("Date").innerHTML = "Current Time : " + hour + " : " + minute + " : " + second;
})()
<p id="Date">Date and time will show here</p>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...