Привязан ли window.history.pushState к ActiveX в Internet Explorer 11?

При попытке добавить к URL-адресу с помощью window.history.pushState я получаю функциональные возможности в Chrome, Firefox, Safari и Opera, но на моей виртуальной машине в IE появляется диалоговое окно браузера с просьбой включить ActiveX. Если я это сделаю, я получу желаемую функциональность, но если нет, то сообщение в конечном итоге исчезнет, ​​и браузер придется снова открывать. Есть ли способ реализовать это без использования ActiveX?

        <button onclick = "myFunc()">Button</button>
...
    <script>
        var myFunc = function() {
            var newurl = window.location.protocol + '//' + window.location.host + window.location.pathname + '?append+to+the+url'; 
            window.history.pushState({ path: newurl }, '', newurl);
        }
    </script>

Я ожидал, что он будет немедленно добавлен к URL-адресу, но IE ожидает, что пользователь включит ActiveX, чтобы сохранить функциональность.

В целях тестирования попробуйте включить параметры, связанные с ActiveX, в разделе «Параметры Интернета» -> «Безопасность» -> «Пользовательский уровень». Ссылка: i.postimg.cc/fWf6JWvZ/185.png Затем снова попробуйте сделать тест, чтобы увидеть, работает ли он без подсказки или нет.

Deepak-MSFT 10.07.2019 16:40

@ Deepak-MSFT Я только что включил все настройки, относящиеся к работе ActiveX, и диалоговые окна все еще появляются. Кажется, что диалоговое окно немного более последовательно обнаруживает, что скрипт пытается запуститься.

Jimmy Roche 10.07.2019 17:45
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

При дальнейшем тестировании я обнаружил, что включение параметров ActiveX также не помогает решить проблему.

После этого я пытаюсь включить опцию Разрешить запуск активного содержимого в файлах на моем компьютере в Продвинутая вкладка из Настройки интернета.

Это решило проблему для IE, и теперь нет всплывающих окон для разрешения ActiveX, и код работает нормально.

Вывод в IE 11:

Другие вопросы по теме