2017-01-02 1 views
1

я использовал несколько EventListeners но именно этот один не работает в IE:Cross браузер addEventListener

document.querySelector('#assets').addEventListener('loaded', function() { 
document.getElementById('startbutton').style.display = "inline"; 
}); 

document.querySelector('#assets').addEventListener('loaded', function() { 
document.getElementById('loadingbutton').style.display = "none"; 
}); 

Я хочу, чтобы отобразить кнопку во время загрузки активов, а затем удалить кнопку с дисплеем ни как только есть активы загружен. Проблема в том, что загрузочная кнопка не удаляется, поэтому стиль не применяется. Это происходит только в Internet Explorer. Как написать его с помощью attachEvent, чтобы он работал?

Кнопки HTML:

<button id="startbutton" class="my_popup_close button" onclick="playSound();setTimeout(showDiv, 2000);" name="answer" value="Show Div" style="display: none;">Ready</button> 

<button class="buttonloading loader" id="loadingbutton">Loading<span class="loader__dot">.</span><span class="loader__dot">.</span><span class="loader__dot">.</span></button> 
+0

Оба события прослушиваются одинаково, объединяют команды обратного вызова и сохраняют там несколько байтов. –

+0

У вас есть пример рабочего кода? – Julian

ответ

2

прослушиваемых к элементу одно и то же, а также события. Вы должны комбинировать обратный вызов следующим образом:

document.querySelector('#assets').addEventListener('loaded', function(){ 
    // display #startbutton and hide #loadingbutton 
    document.getElementById('startbutton').style.display = "inline"; 
    document.getElementById('loadingbutton').style.display = "none"; 
}); 
Смежные вопросы