Javascript Chrome扩展创建-获取元素';s Src属性并打开一个新选项卡

Javascript Chrome扩展创建-获取元素';s Src属性并打开一个新选项卡,javascript,google-chrome-extension,Javascript,Google Chrome Extension,manifest.json: { "manifest_version": 2, "name": "Secure Video Downloader", "description": "Download Videos Virus Free", "version": "1.0", "content_scripts": [ { "matches": ["https://gostream.is/*", "http

manifest.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://*/*"
]
}
content.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>
元素:

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秒以完成)时,会打开一个新选项卡,其url为
about:blank
。我还测试了控制台显示元素的src,并在控制台中打印出
undefined
。如果我右键单击dev控制台中的链接并按
openinnewtab
,元素src就会像它应该的那样打开。我还尝试将
window.open(showpanel,10000)
更改为
window.open('http://www.sethjfreeman.com”,10000)它打开了我的网络公文包。因此,问题一定是获取元素的src属性。

这可能是您的问题:

 var video = document.getElementsByClassName("jw-video").src;
返回一组没有属性的元素
src

试试这个:

var video = document.getElementsByClassName("jw-video")[0].src;
其他副本: