加载代码片断
这个是蛮久以前的东西了,当一个页面有太多内容的时候,我们可以把第一屏以外的内容放到一个textarea里面,让textarea隐藏,这样一开始内容是不会加载的,同时页面就会更快的呈现给用户,当用户在浏览第一屏的内容的时候,我们可以再用JS让浏览器加载textarea里面的内容,或者当用户把滚动条拖到下面的时候再加载,那么这里就需要一个加载HTML代码片断的函数,
//加载HTML代码片断 function loadHtmlSnippet(source,target,callback){ var iframe = document.createElement('iframe'),doc,html = source.value; iframe.style.cssText = 'position:absolute;left:-999999px;width:0px;height:0px;'; document.body.appendChild(iframe); doc = iframe.contentDocument || iframe.contentWindow.document; doc.open(); doc.writeln(html); iframe.attachEvent ? iframe.attachEvent('onload',_onload) : iframe.onload = _onload; function _onload(){ target.innerHTML = html; callback && callback(); document.body.removeChild(iframe); } doc.close(); };
说明: 参数
source就是textarea对象
target就是将加载进来的HTML代码放到里面
callback就是当代码加载完后执行的回调