最近在脑子一直在想pjblog重构的问题.当然重构前,必须把所有需要做的东西想清楚.其中想到一个js改进的内容,需要innerHTML后的脚本也可以运行.但是尝试了一下.发现IE下直接innerHTML的脚本无法执行. 尝试了几次发现,插入的HTML里,<script>前面有其他对象,并且script 设置了 defer , 这样的脚本innerHTML被IE执行了.
![让innerHTML的脚本也可以运行起来 让innerHTML的脚本也可以运行起来](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9pbWdzLzUvMS8yLzMvMzUvZGZhODBkZDg2MmFlOWRiMGI0NDk0ZWQyZmQ4MzU4MWYuanBl.jpe?w=700)
,但是这招对于firefox不灵~~
![让innerHTML的脚本也可以运行起来 让innerHTML的脚本也可以运行起来](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9pbWdzLzAvNS85LzgvNjQvMWQzMWUyYmVhYjY3YTY2ZDhlNDRkYzFiODdiYmU1NTMuanBl.jpe?w=700)
后来找了一些资料发现 firefox 把对象重新 append 或者 insertBefore 一次就可以执行里面的脚本了.
![让innerHTML的脚本也可以运行起来 让innerHTML的脚本也可以运行起来](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9pbWdzLzcvMS84LzkvNTUvNGExOTY1MzliMzBiMDg2Mjg5YjU0ZmEwYjEwZmU3NzkuanBl.jpe?w=700)
程序代码