You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Uncaught TypeError错误求助:document.getElementById(...).contentWindow未定义

解决Uncaught TypeError: document.getElementById(...).contentWindow is undefined错误

错误原因

你代码里获取的是<div id="vid">元素,但contentWindow是iframe元素独有的属性,div元素不存在这个属性,因此会抛出undefined的错误。

修复步骤

  1. 给iframe添加专属ID,修改后的HTML代码:
<div id="vid">
  <iframe id="video-frame" src="https://yewtu.be/embed/jfKfPfyJRdk" height="0px" width="0px" frameborder="0"></iframe>
</div>
  1. 修改JavaScript代码,直接定位到iframe元素,同时增加加载完成判断(避免iframe未加载就执行操作):
function volume() {
  const videoIframe = document.getElementById("video-frame");
  // 等待iframe加载完成后再操作内部元素
  videoIframe.onload = function() {
    videoIframe.contentWindow.getElementById("player_html5_api").volume = 0.2;
  };
}

额外注意事项

如果执行后仍然无法修改音量,大概率是跨域限制导致的:yewtu.be的页面可能设置了禁止外部页面操作其iframe内容的策略。这种情况下,推荐直接通过嵌入链接的参数设置初始音量,比如修改iframe的src为:

https://yewtu.be/embed/jfKfPfyJRdk?volume=20

(参数值为0-100的数字,代表百分比音量)

内容的提问来源于stack exchange,提问作者ecjwthx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 22:15:35