清单.json:
{
"manifest_version": 2,
"name": "Secure Video Downloader",
"description": "Download Videos Virus Free",
"version": "1.0",
"content_scripts": [
{
"matches": ["https://gostream.is/*", "http://gostream.is/*"],
"js": ["content.js", "jquery-3.2.1.min.js"],
"run_at": "document_end"
}
],
"browser_action": {
"default_icon": "secure_16.png",
"default_popup": "popup.html"
},
"permissions": [
"tabs", "http://*/*"
]
}
内容.js:
function showpanel() {
var video = document.getElementsByClassName("jw-video").src;
console.log(video);
window.open(video, '_blank');
}
setTimeout(showpanel, 10000);
元素:
<video class="jw-video jw-reset" disableremoteplayback="" webkit-playsinline="" playsinline="" jw-loaded="data" src="https://3.bp.blogspot.com/_SxCDsop4y3m5AuPGDOuDZ-y7MhCneqxOCGqVmWO9evlbvZ1yM4GuI9fBtYriE6ImR1LQiSrSUWcS6g9rv_jeJj5-f5HyJO0pod5elOGpwhxZIoix4cth9b6dNUWdMJMPETq1ds_8A=m37" jw-played=""></video>
描述:
当我加载页面时,加载content.js
并等待 10 秒让 setTimeout 完成一个新标签页,其 url 为about:blank
. 我还测试了控制台显示为元素的 src 的内容,并undefined
在控制台中打印出来。如果我右键单击开发控制台中的链接并按下Open In New Tab
元素 src 就会像它应该的那样打开。我也尝试将其更改window.open(showpanel, 10000)
为window.open('http://www.sethjfreeman.com', 10000)
并打开了我的网络组合。所以问题一定在于获取元素的 src 属性。
这可能是你的问题:
var video = document.getElementsByClassName("jw-video").src;
.getElementsByClassName()
返回一个没有属性的元素的HTMLCollectionsrc
试试这个:
var video = document.getElementsByClassName("jw-video")[0].src;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句