作者的笔记
我想我可以在受到评论的启发后自己实现它。感谢您的光临。
原始问题
例如,我想在页面中弹出嵌入的 YouTube 视频
https://www.udacity.com/course/viewer#!/c-ud037/l-1649018590/m-1659588540
看起来像这样
youtube html5 播放器作为 iframe 嵌入
<iframe data-ng-controller="videoPlayer" class="ng-scope" frameborder="0" allowfullscreen="1" title="YouTube video player" width="930" height="523" src="https://www.youtube.com/embed/OATi2nCjEoE?autoplay=1&color=red&controls=1&rel=0&showinfo=0&fs=1&theme=light&wmode=opaque&html5=1&enablejsapi=1&origin=https%3A%2F%2Fwww.udacity.com" id="widget2"></iframe>
我希望播放器可以在带有 URL 的新窗口中弹出:
感谢 JaromandaX,我的临时脚本如下:
// ==UserScript==
// @name My Fancy New Userscript
// @namespace http://your.homepage/
// @version 0.1
// @description enter something useful
// @author You
// @include https://www.udacity.com/course/viewer*
// @grant none
// ==/UserScript==
$(document).ready(function()
{
setTimeout(function(){
var button = document.createElement('button');
button.type = 'button';
button.appendChild(document.createTextNode('Pop Youtube'));
button.setAttribute("onclick", "window.open(document.getElementById('widget2').src, 'my video');")
document.querySelectorAll("[class=row-gap-small]")[0].appendChild(button)
}, 2000);
});
我的问题是,通过如图所示的按钮切换 youtube 播放器的内容后,iframesrc
没有改变。因此,单击该按钮仍会将我带到上一课的 youtube 播放器。