document.write 动态加载 script 脚本时,特殊异常

项目中有个JS,需要动态引入。

写法如下:

<script>
document.write(‘<script src="http://www.z4.com/js/xxxx.js?r=‘ + Math.random() + ‘"></script>‘);
</script>

发现一直有错误。

原因是字符串中的</script>与<script>竟然匹配了,导致后面的 ‘);</script> 成为了HTML文本。

解决方法很简单,将</script>分割开就好了。

<script>
document.write(‘<script src="http://www.z4.com/js/xxxx.js?r=‘ + Math.random() + ‘"></scri‘ + ‘pt>‘);
</script>

注意以后在<script></script>中的字符串中使用到</script>,都需要分割处理。否则还会出现此BUG!

时间: 2024-10-07 03:03:36

document.write 动态加载 script 脚本时,特殊异常的相关文章

[转]动态加载JS脚本

动态加载JS脚本 要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script> 2.动态改变已有script的src属性 <script src='' id="s1"></script&

动态加载JS脚本的4种方法

要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script>   2.动态改变已有script的src属性 <script src='' id="s1"></script> <

动态加载script文件

动态加载script文件:   http://www.cnblogs.com/skykang/archive/2011/07/21/2112685.html

Android之根布局动态加载子布局时边距设置无效问题

Android大部分的控件都会有padding和layout_margin两个属性,一般来说它们的区别是: padding:控件中的内容离控件边缘的距离. margin:  控件离它的父控件边缘的距离. 今天做了一个由根布局动态加载子布局的实验,结果发现子布局中的这两个属性可以按预期的效果显示,但是给根布局设置的padding并没有对被加载的子布局产生效果. 代码如下: 根布局文件名为activity_main.xml,其xml文件定义的内容为: <LinearLayout xmlns:andr

使用jQuery动态加载js脚本文件的方法

动态加载Javascript是一项非常强大且有用的技术.这方面的主题在网上已经讨论了不少,我也经常会在一些个人项目上使用RequireJS和Dojo加载js 它们很强大,但有时候也会得不偿失.如果你使用的是jQuery,它里面有一个内置的方法可以用来加载单个js文件.当你需要延迟加载一些js插件或其它类型的文件时,可以使用这个方法.下面就介绍一下如何使用它! 一.jQuery getScript()方法加载JavaScript jQuery内置了一个方法可以加载单一的js文件:当加载完成后你可以

JS学习之动态加载script和style样式

前提:我们可以把一个网页里面的内容理解为一个XML或者说网页本身也就是一个XML文档,XML文档都有很特殊的象征:"标签"也叫"节点".我们都知道一个基本的网页格式是 <!DOCTYPE /> <head></head> <body><body /> 这些是最基本的形态,但是其实它省略了最外面的一个标签<document>. <document> <!DOCTYPE />

动态加载script

使用动态加载的方式去加载script,可以防止页面因加载脚本阻塞而空白一片,通过侦听script节点的完成事件来知道脚本什么时候加载完毕. //1.Chrome.Firefox.Opera.Safari script.onload = function(){ //TO-DO:... } //2.IE script.onreadystatechange = function(){ if(script.readyState == "loaded" || script.readyState

js动态加载HTML元素时出现的无效的点击事件

项目中列表数据中隐藏着详情数据, 图一: 详情数据是:根据当前行的数据作为参数,通过ajax请求到后台返回的数据,再根据返回的结果动态生成HTML页面 图二: js文件中的这些js的点击事件无效: js代码: // 推荐商家点击标题展开与收起$('.toggle-tag').on('click', function(){    var ele = $(this).parents('tr').next().find('.pro-details');    if(ele.is(':hidden'))

使用jQuery加载script脚本

原文链接: Loading Scripts with jQuery JavaScript loaders加载器简单强大而又非常有用.我在博客上介绍过其中一些,例如 curljs  和 LABjs ,也在个人项目中使用 RequireJS 和 Dojo 加载程序.他们是如此的强大,但在某些情况下可能是杀鸡用牛刀了.如果你正在使用jQuery,就会发现jQuery内置了加载单个脚本的方法,如果你想 延迟加载插件或其他类型的脚本,可能该方法会派上用场.下面介绍如何使用它! The jQuery Jav