iframe破坏的代码不适用于safari

时间:2014-08-05 05:24:44

标签: html css iframe

突发代码(内联css)不适用于safari上的html元素。 如果我删除了DOCTYPE,它就能正常运行。

不知道哪里出错了,就像在其他浏览器中一样,它可以正常工作。

也注意到了。 id选择器未应用,只有类选择器才能应用。

test.js代码

   var docvar="iframe";
   var frmid="zd_frm_2217_19"; 
   var iframe_id = (typeof(frmid) != undefined) ? unescape(frmid) : "";
   docvar = (typeof(docvar) != undefined) ? unescape(docvar) : "";

 if (docvar == 'iframe' || (typeof frame != 'undefined' && frame.id != '')) {
     d = parent.document;
     w = window.parent
   } else {
     d = document;
     w = window
   }

  if (docvar == 'iframe') {
    var testBox = document.createElement('div');
    testBox.id = 'test';
    d.getElementById(iframe_id).parentNode.appendChild(testBox)
}

     var addCSSRule = function(def, id) {
         var ss1 = document.createElement('style');
         var hh1 = d.getElementsByTagName('head')[0];
         hh1.appendChild(ss1);
          if (ss1.styleSheet) {
             ss1.styleSheet.cssText = def;
          } else {
             var tt1 = document.createTextNode(def);
             ss1.appendChild(tt1);
          }
       };

           var css="#test{\n"+
                  "height:250px;\n"+
                  "width:300px;\n"+
                  "position:relative;\n"+
                  "left:50%;\n"+
                  "top:110px;\n"+
                  "background:green;\n"+
                "}\n\n";

            addCSSRule(css,'');

主要html文件来源

    <!DOCTYPE html>
     <html>
       <head>
       </head>
       <body style="height:1300px;">
      <div id="test_123" style="width:300px; height:250px;">
       <iframe id="zd_frm_2217_19" src="t1.html" frameborder=0 marginheight=0  marginwidth=0 scrolling="no" allowTransparency="true" width=1 height=1></iframe>
     </div>
     </body>
    </html>

t1.html来源

   <html>
     <head> 
    </head>
     <body>
     <script type="text/javascript" src="test.js"></script>
     </body>
   </html>

0 个答案:

没有答案