动态设置 iframe src

我有一个程序,它将动态设置一个 iframe src 加载页面。我需要钩住完全加载的页面的事件处理程序。我该怎么做?谢谢!

325716 次浏览

试试这个:

document.frames["myiframe"].onload = function(){
alert("Hello World");
}

试试这个:

top.document.getElementById('AppFrame').setAttribute("src",fullPath);
<script type="text/javascript">
function iframeDidLoad() {
alert('Done');
}


function newSite() {
var sites = ['http://getprismatic.com',
'http://gizmodo.com/',
'http://lifehacker.com/']


document.getElementById('myIframe').src = sites[Math.floor(Math.random() * sites.length)];
}
</script>
<input type="button" value="Change site" onClick="newSite()" />
<iframe id="myIframe" src="http://getprismatic.com/" onLoad="iframeDidLoad();"></iframe>

http://jsfiddle.net/MALuP/的例子

您还应该考虑到,在某些 Opera 版本中,onload 会被多次触发,并添加一些钩子:

// fixing Opera 9.26, 10.00
if (doc.readyState && doc.readyState != 'complete') {
// Opera fires load event multiple times
// Even when the DOM is not ready yet
// this fix should not affect other browsers
return;
}


// fixing Opera 9.64
if (doc.body && doc.body.innerHTML == "false") {
// In Opera 9.64 event was fired second time
// when body.innerHTML changed from false
// to server response approx. after 1 sec
return;
}

Ajax 上传借来的代码

试试这个..。

function urlChange(url) {
var site = url+'?toolbar=0&amp;navpanes=0&amp;scrollbar=0';
document.getElementById('iFrameName').src = site;
}


<a href="javascript:void(0);" onClick="urlChange('www.mypdf.com/test.pdf')">TEST </a>

尝试这个代码。然后’formId’div 可以设置图像。

$('#formId').append('<iframe style="width: 100%;height: 500px" src="/document_path/name.jpg"' +
'title="description"> </iframe> ');