При разборе мануала по использованию API от Яндекса столкнулся со следующей проблемой. Непонятно откуда берется(или как/где подключается) объект ya
в этой строчке:
var AudioPlayer = ya.music.Audio;
Что собственно и приводит к ошибке:
Следовал строго инструкции.
js файлы подключаю в такой последовательности:
<head>
<meta charset="utf-8">
<script src="https://music.yandex.ru/api/audio/dist/index.js"></script>
<script src="/index.js" type="text/javascript" ></script>
</head>
Console:
Refused to load the script 'https://music.yandex.ru/api/audio/dist/index.min.js' because it violates the following Content Security Policy directive: "script-src 'self' blob: filesystem: chrome-extension-resource:".
но такая ошибка выходит, если убрать `type=javascript', если его оставить, то ошибки нет, но скрипт по-прежнему не подгружается
Перво-наперво, загрузи сайт в браузере Хром или яндекс, нажми f12, справа зайди в опцию console. Там и глянь, красным будет помечено, что у тебя не загружено. Отсюда и пляши. Скорее всего яндекс не подгружается. Кстати лучше будет если ты этот файл скачаешь и будешь загружать локально.
Если сделать строго по инструкции то всё работает!
var dom = {
play: document.querySelector(".controls_play"),
overlay: document.querySelector(".overlay")
};
var audioPlayer = new ya.music.Audio(null, dom.overlay);
console.log(audioPlayer);
.controls_play {
padding: 5px 10px;
background: #fff;
border: 1px #aaa solid;
cursor: pointer;
}
.controls_play:hover {
border-color: #666;
}
.overlay {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 100;
}
.overlay_hidden {
display: none;
}
.overlay_error {
background: #ffcccc;
color: #ff0000;
}
<head>
<meta charset="utf-8">
<script src="https://music.yandex.ru/api/audio/dist/index.js"></script>
</head>
<div class="player">
<div class="controls">
<button class="controls_play">Play</button>
</div>
<div class="overlay"></div>
</div>
Изучив вывод консоли:
Refused to load the script 'https://music.yandex.ru/api/audio/dist/index.min.js' because it violates the following Content Security Policy directive: "script-src 'self' blob: filesystem: chrome-extension-resource:".
пришел к выводу что проблема в manifest.json файле. Необходимо было прописать значение в свойстве content_security_policy
:
{
"manifest_version": 2,
/*---*/
"content_scripts": [
{
"matches": ["https://music.yandex.ru/*"],
"js": ["index.js"]
}
],
"content_security_policy": "script-src 'self' https://music.yandex.ru; object-src 'self'",
/*---*/
}
источник
Виртуальный выделенный сервер (VDS) становится отличным выбором
Я создаю реакт компонент, содержащий в себе элементы, одним из которых является форма содержащая кнопкиТак как кнопки внутри формы, по-умолчанию,...
Нашел в сети готовый код на JS расчета предполагаемой даты родовС кодом все ОК, он прост и понятен
Я новичок в PHP и JSХотел выполнить тривиальную задачу, скачать себе на ПК анимированные стикеры из ВК, думаю, CTRL+SHIFT+U+найти путь до нужной gif и дело...