eolasfix.js

来自「短消息服务( SMS )的定义是基于文本的服务」· JavaScript 代码 · 共 79 行

JS
79
字号
// Documentation & updates available at:// http://codecentre.eplica.is/js/eolasfix/test.htm(function( Eolas_Fixed,            win, doc,            getElementsByTagName,            outerHTML,            parentNode,            tags,            elmsToRemoveOnload,            x,            is_ie,            y,z,elm,childNode,HTML,dummy,eolasfix){  // run only once!  if (win[Eolas_Fixed]) return;  win[Eolas_Fixed] = 1;  eolasfix = function ()  {    // for each tag name specified in Array t    while (tags[++x])    {      // find all elements of that type in the document      // loop through the elements      y = 0;      while (elm = doc[getElementsByTagName](tags[x])[y++])      {        if (is_ie)        {          HTML = '>';          z = 0;          // <param> elements don't show up in innerHTML IE          // so we need to collect their outerHTML.          while (childNode = elm.childNodes[z++])              HTML += childNode[outerHTML];          // create a 'dummy' element          dummy = doc.createElement('i');          // inject it next to `elm`,          elm[parentNode].insertBefore(dummy, elm);          // and turn it into an `elm` clone          dummy[outerHTML] = elm[outerHTML].replace(/>/, HTML);          // increment y to skip over it          y++;          // then hide the original elm          elm.style.display = 'none';          // and save it in 'The List of Elements to Remove Later'.          elmsToRemoveOnload[elmsToRemoveOnload.length] = elm;        }        else        {          elm[outerHTML] = elm[outerHTML];        }      }    }  };  // For IE run the fix straight away (because the defer="defer"  // attribute has delayed execution until the DOM has loaded).  // Then assign a window.onload event to purge the old elements.  is_ie && !eolasfix() && win.attachEvent('onload', function(){    x=0;    while(elm = elmsToRemoveOnload[x++])        elm[parentNode].removeChild(elm);  });  // For Opera set an `DOMContentLoaded` event to run the fix.  win.opera && doc.addEventListener('DOMContentLoaded', eolasfix, 0);})( '__Eolas_Fixed',    window, document,    'getElementsByTagName',    'outerHTML',    'parentNode',    ['object','embed','applet'],    [],    -1 /*@cc_on,1 @*/  );

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?