Почему выходные данные дублируются внутри слушателя события hashchange?

вам нужно процитировать его, вырвав «

echo "<tr>\n
        <td align='right'><b>Location</b></td>
        <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td>
    </tr>";
0
задан Ivan Kaloyanov 17 January 2019 в 15:23
поделиться

1 ответ

Ваш код работает правильно, как он написан. Я думаю, что у вас случайно есть выходной код вашего календаря внутри вашей функции hashchange. Если вы переместите его на улицу, он должен работать так, как вы ожидаете. Кроме того, вы создаете свой календарь внутри элемента p вместо элемента calendar. код ниже показывает работающую версию

var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var calendar = document.querySelector('#calendar');
var date = new Date();
location.hash = date.getFullYear();
var p = document.querySelector('p');
p.innerHTML = location.hash;

for (dz = 0; dz < 12; dz++) {
    calendar.innerHTML += '<a href="' + location.hash + '-' + String("0" + (dz + 1)).slice(-2) + '">' + months[dz] + '</a>&nbsp;';
  }

window.addEventListener('hashchange', function() {


  p.innerHTML = location.hash;
});
<div id="calendar"></div>
<p></p>

0
ответ дан jmcgriz 17 January 2019 в 15:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: