问题描述
|
以下JavaScript在Safari的旧版本(Safari 3)中可以正常运行,但在最新版本的Safari上却无法正常运行。
你能帮我找到问题吗?
function loadframe(){
var iframeEl = document.getElementById(\"ifrm\");
if(!iframeEl)
{
window.alert(\'hellooooooo\');
var el = document.createElement(\"div\");
el.innerHTML = \'<iframe id=\"ifrm\" width=\"0\" height=\"0\" src=\\\'<!--EP CLASS=\"com.epiphany.presentation.ServerURLWriter\" ACTION=\"campaign_segment_load\" TEMPLATE=\"campaign\\\\campaign_segments\" -->\\\' onload=\"dw_display(\\\'ifrm\\\',\\\'segmentspn\\\')\" ></iframe>\';
document.body.appendChild(el);
return true;
}
return false;
}
解决方法
function loadframe()
{
var iframeEl = document.getElementById(\"ifrm\");
if(!iframeEl)
{
var el = document.createElement(\'div\');
var e2 = document.createElement(\'iframe\');
e2.src =\"http://google.com\";
e2.setAttribute(\'id\',ifrm);
e2.width= 80;
e2.height= 80;
document.body.appendChild(el);
el.appendChild(e2);
return true;
}
return false;
}
这将适用于所有浏览器,因为iframe是另一个元素,所以我们应该使用DOM方法添加它。