我有一个iFrame,我想在加载后发送JavaScript命令。 我目前的代码如下:
<iframe src="http://www.test.tld/" onload="__doPostBack('ctl00$ctl00$bLogout','')">
但是使用此代码,命令不会被执行。我必须改变什么来使它工作? 只需支持Chrome和Firefox。
答案 0 :(得分:28)
使用iFrame的JavaScript .onload
功能:
<iframe id="my_iframe" src="http://www.test.tld/">
<script type="text/javascript">
document.getElementById('my_iframe').onload = function() {
__doPostBack('ctl00$ctl00$bLogout','');
}
</script>
答案 1 :(得分:4)
document.querySelector("iframe").addEventListener("load", function() {
this.style.backgroundColor = "red";
alert(this.nodeName);
});
&#13;
<iframe src="http://www.example.com/" ></iframe>
&#13;
答案 2 :(得分:2)
更新
从 jQuery 3.0 开始,新语法只是 .on:
查看此 answer here 和代码:
$('iframe').on('load', function() {
// do stuff
});
答案 3 :(得分:1)
您的代码是正确的。只是测试以确保它被调用 像:
// Select all the elements without the class 7676327 and remove them
$('.logos li').not('.7676327').remove();
答案 4 :(得分:1)
@Jasper的答案几乎是正确的。 iframe的src仅缺少http S 。
HTML:
<iframe src="https://www.example.com/" ></iframe>
JavaScript:
document.querySelector("iframe").addEventListener("load", function() {
this.style.backgroundColor = "red";
alert(this.nodeName);
});