我有一个iframe
我需要更改一个角色。
编辑:添加大量额外代码,因为这是我第一次想到的更难。
<iframe href="https://derpxample.com/">
<video id="post_html5_api" class="vjs-tech" loop="" preload="auto" src="https://derpxample.com/v/berp.mp4">
<source src="https://derpxample.com/v/berp.mp4" type="video/mp4">
</video>
</iframe>
我只是想尽可能简单地将网址协议从https
更改为http
。内容源不会因为自动生成而更改。因此,以下内容:
$('iframe').each(function(){
var href = $('iframe').attr('href');
$('iframe').attr('src',href).attr('class','postVine');
$('video').attr('src', function(i, s) {
return s.replace("https", "http");
});
});
答案 0 :(得分:1)
使用这样的:
var element = document.getElementById('my-video');
element.src = element.str.replace('https', 'http');
元素:
<video id='my-video' src = 'https://example... >
答案 1 :(得分:1)
videoElem.src = 'http'+videoElem.src.substr(5);
答案 2 :(得分:1)
也许这对你有用:
$('video').attr('src', $('video').attr('src').replace("https", "http"));
编辑:对于iFrame,您可以尝试这样的事情:
video = $('iframe').contents().find('video');
$(video).attr('src', $(video).attr('src').replace("https", "http"));
答案 3 :(得分:1)
这样的事情怎么样?
var video = document.getElementById('videoID');
video.src = video.src.replace(/^https:/, 'http:');
这并不假设src始终以https:
开头,并且如果https发生在URL的其他位置,则不会中断。
答案 4 :(得分:1)
我怀疑你的问题的关键是你提到<iframe>
。
如果您尝试访问或更改iframe的内容,只有在与父页面相同的主机上加载时才能执行此操作。
有关详细信息,请参阅此问题:Changing the contents of an iframe