Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Почему этот код не работает в microsodt edge (https://javascript.ru/forum/css-html/65669-pochemu-ehtot-kod-ne-rabotaet-v-microsodt-edge.html)

alexKl 01.11.2016 19:26

Почему этот код не работает в microsodt edge
 
function loadMetaDataAll() {
    var alltrack = Array.prototype.slice.call(document.querySelectorAll('.track'), 0);

    alltrack.forEach((item) => {
        id3(item.getAttribute('data-src'), (err, tags) => {
            console.log(tags);
            item.setAttribute('data-title', tags.title);
            item.setAttribute('data-album', tags.album);
            item.setAttribute('data-year', tags.year);
            item.querySelector('span.title').innerHTML = tags.artist + ' - ' + tags.title;
            item.setAttribute('data-artist', tags.artist)

            var audioForMetadata = new Audio(); //Да, да - костыль...
            audioForMetadata.preload = 'metadata';
            audioForMetadata.src = item.getAttribute('data-src');
            audioForMetadata.addEventListener('error', (err) => {
                console.log('error', err)
                item.querySelector('span.duration').innerHTML = 'Ошибка';
                item.setAttribute('data-duration', error)
            })
            audioForMetadata.addEventListener('durationchange', (event) => {
                //Это событие не вызывается
                item.querySelector('span.duration').innerHTML = Math.floor(event.target.duration / 60) + ':' 
                  + Math.round(event.target.duration % 60);
                item.setAttribute('data-duration', Math.floor(event.target.duration / 60) + ':' 
                  + Math.round(event.target.duration % 60))
                event.target.src = 'null';
                event.target.preload = 'none';
                delete audioForMetadata;
            })

            getFileSize(item.getAttribute('data-src'), (size) => {
                item.querySelector('span.size').innerHTML = (size / 1024 / 1024).toFixed(2) + ' МБ';
                item.setAttribute('data-size', size)
            })
        })
    })
}


Если есть предложение для улучшения кода..милости прошу)

http://obscuratest.hol.es/ - можете посмотреть здесь.


Часовой пояс GMT +3, время: 07:34.