如何识别src含streamview.com的iframe并在当前标签页打开其视频
问题:如何仅打开src含streamview.com的iframe视频链接
目标网页有时会嵌入单个iframe视频,我想在当前标签页直接打开这个特定视频的链接。示例iframe代码如下:
<iframe allowfullscreen="true" webkitallowfullscreen="true" mozallowfullscreen="true" marginheight="0" marginwidth="0" scrolling="no" frameborder="0" width="100%" src="https://streamview.com/v/wkx5ntgwdv5b"></iframe>
我写的代码没法正确匹配到目标iframe:
(function() { 'use strict'; var openontaB = document.querySelector('iframe').src; window.location.href = openontaB; })();
请问怎么修改代码,让它只匹配src里包含streamview.com的iframe?
解决方法
直接用CSS属性包含选择器精准定位目标iframe,再加上判断避免报错,修改后的代码如下:
(function() { 'use strict'; // 选中src包含streamview.com的iframe const targetIframe = document.querySelector('iframe[src*="streamview.com"]'); // 找到目标后再跳转 if (targetIframe) { window.location.href = targetIframe.src; } })();
关键说明:
iframe[src*="streamview.com"]:这个选择器能直接筛选出src属性里包含streamview.com的iframe,避免选中页面里其他无关的iframe。- 加
if (targetIframe)判断:防止页面里没有符合条件的iframe时出现错误,让代码更稳定。
如果页面里可能有多个符合条件的iframe,你可以换成document.querySelectorAll()来遍历处理,这里默认只需要单个目标,用querySelector就够了。
内容的提问来源于stack exchange,提问作者user18953534
相关产品推荐
相关产品推荐

