javascript - 我尝试使用 style.display = "none"; 让Javascript隐藏我的视频标签,但这不起作用?
问题描述
我正在尝试通过使用 [videoclass].style.display = "none"; 来隐藏使用 javascript 的视频元素。但它不工作。
HTML:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<video class="dntshow" width="444" height="250" controls>
<source src="" id="video_here">
Your browser can not play this video.
</video>
CSS:
.dntshow{
display: block;
z-index: 999;
margin: 0 auto;
}
JS:
var doshow = document.getElementsByClassName("dntshow");
doshow.style.display = "none";
我究竟做错了什么?
解决方案
getElementsByClassName
返回与查询匹配的元素集合。您需要获取要隐藏的元素。例如,如果它是第一个元素,试试这个:
var doshow = document.getElementsByClassName("dntshow")[0];
doshow.style.display = "none";
推荐阅读
- css - angular.json 中的 Angular Styles 数组被 configuraion Styles Array 覆盖
- android - 不再支持目标选项 1.5。使用 1.6 或更高版本
- php - Unicode 上标仅适用于前几位数字
- ios - iOS Flutter App:如何管理启用/禁用屏幕截图
- javascript - CSS 正确定位搜索菜单
- python - APIError(code=-1100): 在参数'symbol'中发现非法字符;合法范围是 '^[A-Z0-9-_.]{1,20}$'
- javascript - 如何限制输入字段中某些字符的数量?
- powershell - Powershell 调用响应 Where 子句
- r - 使用 ggplot2 将平均值添加到 R 中的分组箱形图
- javascript - 我怎样才能让 moment.Moment 使用 UTC,但保留日期和时间?