如何使用JS / JQUERY将我网站中的所有声音静音?

时间:2017-03-19 19:33:23

标签: javascript jquery html iframe mute

我的网页包含多个与外部网站相关的iframe。

如何使用javascript或jquery将整个页面静音?

2 个答案:

答案 0 :(得分:0)

你做不到。您需要访问框架的内容,但如果您正在加载外部网站,那么您将遇到相同的原始政策。

有关该主题的更多答案,请查看this question

答案 1 :(得分:0)

如果您加载的网站相当简单,可以通过php“加载”它们并在html中添加<base>标记。

注意:它不适用于有大量外部资源的复杂网站

使用以下内容创建文件iframe-loader.php:

<?php
error_reporting(0);

$url = $_REQUEST['url'];
$html = file_get_contents($url);

$dom = new domDocument;
$dom->strictErrorChecking = false;
$dom->recover = true;
$dom->loadHTML($html);

//BASE
$head = $dom->getElementsByTagName('head')->item(0);
$base = $dom->createElement('base');
$base->setAttribute('href',$url);

if ($head->hasChildNodes()) {
    $head->insertBefore($base,$head->firstChild);
} else {
    $head->appendChild($base);
}



header('Content-Type: text/html; charset=utf-8');
echo $dom->saveHTML();

?>

然后您可以使用加载程序url

来使用加载程序

<iframe src="iframe-loader.php?url=http://www.example.com" />

您可以访问iframe,因为它们不会混淆相同的原始政策。

现在你可以使用@ObsidianAge在评论中提到的答案。