JavaScript在Safari 3上有效,但在较新的版本上无效

问题描述

| 以下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方法添加它。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...