написание расширений для Google Chrome
Подскажите как реализовать воспроизведение mp3 в popup окошке расширения.
Пытаюсь воспроизводить таким образом:
function PlaySound(surl) {
document.getElementById("soundspan").innerHTML=
"<embed src='"+surl+"' hidden=true autostart=true loop=false>";
}
<span id=soundspan></span>
<form>
<input type="button" value="Play" onClick="PlaySound('strawberry_fields.mp3')">
</form>
но дебаггер выдает следующее: "Refused to execute inline event handler because it violates the following Content Security Policy directive: "script-src 'self' chrome-extension-resource:"." Через флеш mp3 тоже не воспроизводится так как необходимо воспроизводить файл с другого домена, флеш такое не разрешает. |
WowVital,
<object id="Play" style="display:none" width="411" height="28"><param name="movie" value="http://embed.prostopleer.com/track?id=24358372bFX"></param><embed id="id0" src="" allowscriptaccess="always" allowfullscreen="true" width="725" height="506"></embed></object><input type="button" value="Play" onClick="document.getElementById('Play'). style='display:block'; document.getElementById('id0').src='http://embed.prostopleer.com/track?id=24358372bFX'">
Автозапуск не наю как, (какой то параметр должен быть типо autoplay="1" У каждого плеера он может чуть другой |
Если не ошибаюсь но во первых у вас в manifest.json, в permissions должен быть адрес сайта с которого хотите воспроизводить mp3.
попробуйте так:
{
[...]
"manifest_version": 2,
"permissions": ["http://example.com"],
"content_security_policy": "script-src 'self' [url]http://example.com;[/url] object-src 'self'",
}
А непосредственно про ошибку, тут почитайте: http://developer.chrome.com/extensio...licy.html#H2-3 |
walik, ошибка была не совсем в этом, но спасибо за хорошую статью из которой понял в чем было дело и где все подробно и понятно расписано.
Если кому интересно: В popup.html нельзя объявлять вообще никакие скрипты, также и события. То есть вместо
<input type="button" value="Play" onClick="PlaySound('strawberry_fields.mp3')">
Нужно писать <button id="Button1" ></button> А в popup.js
function clickHandler(e) {
PlaySound('strawberry_fields.mp3')
}
document.addEventListener( "DOMContentLoaded" , function () {
document.getElementById("Button1").addEventListener( "click" , clickHandler);
});
|
| Часовой пояс GMT +3, время: 22:26. |