Я полагаю, что некоторые заинтригованы этой странной ошибкой, поэтому я опубликую обходной путь, который я сделал. Я не говорю «решение» и не говорю, что я понимаю, что происходит, я просто говорю, что понял, какой код IE решает игнорировать настолько плохо, что он не загружает весь скрипт:
Метод "play" в playerApi.prestoplayer.js выглядит следующим образом:
play: function (url) {
var promise = this.player.play();
if (promise !== undefined) {
promise.then(() => {
// Autoplay started...
});
}
},
И если он у меня будет, скрипт не загрузится! Теперь получите следующее: если я прокомментирую обещание. Тогда ... тогда IE решает загрузить скрипт !!
play: function (url) {
var promise = this.player.play();
if (promise !== undefined) {
//promise.then(() => {
// // Autoplay started...
//});
}
},
Если я не подчеркивал это достаточно, метод play () никогда не будетпочти позвонил! Это просто определено в скрипте, waititng, который будет вызван!
Теперь получите это:
Если я напишу что-то совершенно безумное, как это:
play: function (url) {
var promise = this.player.play();
if (promise !== undefined) {
xrtgrtgjtwrohjoirjthoojqtreoqoeigjoiqeo
}
},
Это нормально для IE! Он загружает скрипт, он не против этой синтаксической ошибки. Но если я использую "xxxx.then" в скрипте, IE не хочет загружать этот скрипт !!!
Надеюсь, это поможет кому-то и сэкономит его нервы, время, деньги, семейное положение и т. д.