Я надеюсь, что кто-то может помочь с этим. Я получаю следующую ошибку Uncaught TypeError: YT.Player не является конструктором, когда я нахожусь на одной вкладке из примерно 5 на моей странице. Я нажимаю на кнопку на странице, и она вызывает модальное окно, из которого я делаю выбор, и при закрытии модального окна в консоли отображается ошибка.
Что расстраивает, так это то, что, используя те же данные с теми же аргументами компиляции, что и производство, я не могу заставить эту ошибку реплицироваться в наших средах разработки или промежуточной обработки. Единственное отличие состоит в том, что наши производственные серверы работают за NetScaler. Может ли быть проблема NetScaler?
Ниже мой видео код.
<div class="videocontainer">
@if (!string.IsNullOrEmpty(video.VideoURL))
{
<script type="text/javascript">
var _gVideoTracked = false;
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {
events: { 'onStateChange': onPlayerStateChange }
});
}
function onPlayerStateChange(event) {
switch (event.data) {
case 0:
break;
case 1:
if (!_gVideoTracked) {
BaGaTrack('Video Played', 'Played')
}
_gVideoTracked = true;
break;
case 2:
}
}
$(document).ready(function () {
$.getScript("https://www.youtube.com/iframe_api", function () {
player = new YT.Player('player', {
events: { 'onStateChange': onPlayerStateChange }
});
});
});
</script>
<iframe id="player" src="@video.VideoURL/?enablejsapi=1" allowfullscreen class="video"></iframe>
}
</div>