IE8的項目在IE11下 一些功能沒法實現的解決方案

最近改了一些IE11下一些功能沒法實現的項目,發現了有一些IE8下的方法 ,在IE11下被取消或者替代了,以下:ios

1.JavaScript 運行時錯誤: 對象不支持「attachEvent」屬性或方法;瀏覽器

attachEvent 這個方法在IE11下改爲了addEventListener ,因此我這裏加了瀏覽器版本判斷 才得以實現了IE8 和IE11下都好用app

 if (navigator.appName == "Microsoft Internet Explorer" && (navigator.appVersion.match(/8./i) == "8." || navigator.userAgent.indexOf("MSIE 8.0") > 0 || navigator.appVersion.match(/7./i) == "7.")) {
                 window.attachEvent("onload", OverrideBaseFunction);
      } else {
                 window.addEventListener("onload", OverrideBaseFunction);
     }ide

2.沒法獲取未定義或 null 引用的屬性「tags」this

   由於這裏引用了Jquery,可是在下面沒有用到spa

   源代碼: var radios=document.body.all.tags("INPUT"); 對象

                 for(var i=0;i<radios.length;i++)
                    {
           if(radios[i].type=="radio")
                {
          if(radios[i].checked)
              {
            type=radios[i].value;
                          break;
           }
        }
   }
ip

改爲:get

         type =$('input:radio[name*="type"]:checked').val();    由於引用的是Jquery可是沒有使用到,所用用Jquery寫一句話input

          var inputs=document.getElementById("cblProcess").all.tags("INPUT");
           var isOne=false;
            for(var i=0;i<inputs.length;i++)
            {
            if(inputs[i].type=="checkbox"&&inputs[i].checked)
             {
             isOne=true;
           break;
            }
         }

3.JavaScript 運行時錯誤: 沒法獲取未定義或 null 引用的屬性「tags」

             源代碼: var tds=tr.all.tags("TD");

                         var result="";
                     for(var i=0;i<tds.length;i++)
                          {
                       var tdText=tds[i].innerText;
                             if(i>0)
                         result+=";"+tdText;
                            else
                       result+=tdText;
                     }

 

      

              改爲:var result ="";                      $(tr).each(function(){                       $(this).children("TD").text(function(i,text){                         if(i>0 && text !="")                           {                         return ";" + text;                            }                        });                   result = $(this).children("TD").text();                     $(this).children("TD").text(function(i,text){                    if(i>0 && text !="")                  {                return text.substr(1);                 }             });       });

相關文章
相關標籤/搜索