PHP
·
发表于 5年以前
·
阅读量:8219
最近在Dron的UCRen网站看到一种很帅的JS写法,记录一下。
UCRen是下面这样引入widget的(摘自这个页面):
<script type="text/javascript" src="../../ucren-engine/cache-boot.js?skin=qq">
import webui.FileInput;
import renderfactory.FormRenderer;
</script>
第一眼看到这段代码,我还在想这样写JS语法分析器不报错才怪,难道是让window.onerror返回true干掉了浏览器的错误提示?这样也太不和谐了吧!今天 仔细看了看才明白了,这个script标签是有src属性的,这样写标签里的内容会被忽略掉,不会执行也不会报错。在src链入的cache- boot.js里可以用:
var scripts = document.getElementsByTagName("script");
var code = scripts[scripts.length-1].innerHTML;
来得到那些神奇的代码,然后用正则解析成正常的script标签就OK了。原理不复杂,不过很有用。可以用它写出一些很有趣的代码来。