iframe页面元素获取
本帖最后由 Hangover 于 2022-1-25 13:52 编辑问题:有木有蛋蛋大的大佬给出个简单便捷获取iframe页面元素的方法
地址: https://www.siguyy.net/play/137220-2-13.html
这是我获取不同线路视频中logo并去除的方法:1.let weburl=unsafeWindow.location.href
if (weburl.indexOf('www.ml0513.com')!=-1) {
GM_addStyle(`
#lelezdy,
.leleplayer-logo{
display:none !important;
}
`)
}
if (weburl.indexOf('fufen.mobilegamestudio.net')!=-1) {
GM_addStyle('.dplayer-logo{display:none !important}')
}
2.
setTimeout(() => {
let weburl=window.location.href;
if (weburl.indexOf('www.ml0513.com')!=-1) {
var lelezdy = document.querySelector('#lelezdy');
var logo1 = document.querySelector('.leleplayer-logo');
lelezdy.style.display = 'none';
logo1.style.display = 'none';
}
if (weburl.indexOf('fufen.mobilegamestudio.net')!=-1) {
var logo2 = document.querySelector('.dplayer-logo');
logo2.style.display = 'none';
}
}, 3000)
这是页面中视频Logo:
报错是因为跨域了,非同源的window无法获取document对象,如果只是内联框架,那反而没有跨域问题,所以同源contentDocument,跨域改match,就是最简单的方案了。
我想通过这种方式去获取 iframe页面元素,但是报错了
你的标题和你的需求有很大的出入啊
这个已经是最简单的方案了
if (weburl.indexOf('fufen.mobilegamestudio.net')!=-1) {
GM_addStyle('.dplayer-logo{display:none !important}')
}
个人使用的话,建议还是使用ublock来处理会方便一些 本帖最后由 Hangover 于 2022-1-25 14:52 编辑
ThisAV 发表于 2022-1-25 14:39
你的标题和你的需求有很大的出入啊
这个已经是最简单的方案了
如果iframe只是一个内联框架不包含另一个网页,这方法就不行了,另外我的本意并不是去广告之类的,是想要定位iframe页面中的元素
Hangover 发表于 2022-1-25 14:50
如果iframe只是一个内联框架不包含另一个网页,这方法就不行了,另外我的本意并不是去广告之类的,是想要 ...
document.querySelectorAll('.leleplayer-logo', 'iframe') ThisAV 发表于 2022-1-25 14:59
document.querySelectorAll('.leleplayer-logo', 'iframe')
gg 上面有地址可以试试 Hangover 发表于 2022-1-25 15:06
gg 上面有地址可以试试
document.querySelector('iframe').contentWindow.document.querySelector试试 本帖最后由 Hangover 于 2022-1-25 15:23 编辑
李恒道 发表于 2022-1-25 15:16
document.querySelector('iframe').contentWindow.document.querySelector试试
那页面中有3个iframe标签 而且使用contentWindow.document或者contentDocument直接报错 Hangover 发表于 2022-1-25 15:19
那页面中有3个iframe标签 而且使用contentWindow.document或者contentDocument直接报错 ...
那种属于不是同源我记着
这种情况只能match匹配地址了?
页:
[1]
2