ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javascript – 如何在chrome扩展中播放声音[复制]

2019-10-06 16:35:55  阅读:159  来源: 互联网

标签:javascript google-chrome google-chrome-extension


参见英文答案 > Insert an image in chrome extension                                    1个
我想在镀铬扩展中播放声音.我该怎么做?我应该在myscript.js文件中写什么?

我试着用myscript.js写:

var audio = new Audio("alarm.wav");
audio.play();

和:

document.write('<audio id="player" src="alarm.wav" >');
document.getElementById('player').play();

但它不起作用.我没有添加任何东西,所以没有未满足的条件.

我的manifest.json文件:

{
  "name": "Alarm",
  "version": "1.0.0",
  "icons": {"64": "icon64.png"},
  "permissions": [
    "http://site1/",
    "http://site2/"
  ],
  "content_scripts": [
    {
      "matches": ["http://site1/", "http://site2/"],
      "js": ["myscript.js"],
      "run_at": "document_end"
    }
  ],
  "manifest_version": 2
}

如果我在myscript.js文件中添加按钮到站点,这个按钮效果很好,但我不能播放声音.我的音频文件是mp3,与manifest.json和myscript.js在同一个文件夹中,我的myscript.js是:

var myAudio = new Audio();
myAudio.src = "alarm.mp3";
myAudio.play();

解决方法:

使用JavaScript播放声音/音乐的最简单方法是使用Audio对象:您只需要在扩展文件夹中放置要播放的文件,就可以像这样播放:

var myAudio = new Audio(chrome.runtime.getURL("path/to/file.mp3"));
myAudio.play();

您可以使用play()播放并使用pause()暂停.

请记住,如果要在内容脚本(或不在chrome://扩展URL下的任何其他位置)播放声音,则必须在web_accessible_resources清单字段中声明音频文件:

"web_accessible_resources": [
    "path/to/file.mp3"
]

工作实例

您可以下载我从HERE开始的测试扩展.当您单击stackoverflow.com页面内的任何内容时,它会通过内容脚本播放声音.

标签:javascript,google-chrome,google-chrome-extension
来源: https://codeday.me/bug/20191006/1861416.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有