<script> //创建一个script标签 function loadScriptString(code) { var script = document.createElement("script"); //创建一个script标签 script.type = "text/javascript"; try { //IE浏览器认为script是特殊元素,不能再访问子节点;报错; script.appendChild(document.createTe…
代码如下: var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.charset = 'GBK'; script.onload = script.onreadystatechange = function() { if (!this.readyState || this.r…
在前端页面的时候,会经常遇到用JavaScript动态创建出来的Button按钮或其他标签无法使用点击事件的问题.如下代码,使用jquery在body中动态创建一个class为demo的Button按钮,当点击这个按钮时无法触发点击事件. <script> $(function(){ $("body").html("<button class='demo'>按钮</button>"); $(".demo").c…
在页面中动态追加html片段的时候,有时候动态添加的代码会含有<script>标签,比如用了一些模板引擎,或者你的代码有些复杂的时候.然而我们用DOM提供的innerHTML方式来添加代码的时候,<script>标签中的代码并不能执行,如果有src属性,指向的外联文件也不会被加载,这并不是浏览器的bug,因为w3c文档就是这么规定的.      那我们有什么办法可以恢复追加的<script>标签的代码执行能力呢?   重新构造<script>标签      …
1.script加载js代码是并行加载,顺序执行的,并且在加载和执行js时会阻塞浏览器渲染引擎, 2.defer和async属性添加过后,js的下载和执行就不会阻塞浏览器的渲染引擎了 3.defer会等到渲染完毕,带defer的script顺序执行,会在DOMContentLoaded之前执行,在普通的script执行后执行. 4.async会在下载完毕后立即执行,并且不能保证执行的顺序,一定会在onload之前执行完毕…
动态创建script标签 (由事件触发) 在我们需要请求数据的时候我们就可以动态的创建 script 标签 src设置为我们需要请求数据的地址 另外我们可以附加参数 ?后面附加参数 例如 :?参数=1&callbacl=cb    我们还可以指定回调函数 回调函数就是我们在得到数据之后需要做什么处理 给这个函数传一个参数 即我们想要的数据 btn.onclick=function(){ var value = numbers.value; // 必须在点击事件之后获取 这样或取得才是当前的 值…
一.动态创建link方式 我们可以使用link的方式.如下代码所示. 二.动态创建style方式 但是,这样的话,需要加载整个css文件,但是那样有可能浪费一个http请求并占用一个服务器请求数,并等待上一段下载时间,所以,Firebug Lite采取的是将css代码写在js中,然后动态创建style标签的方法,正如下面所示 这样的话,如果是较少的代码,可以比较方便的实现到动态加载css的效果,但是如果为了方便维护和管理,并没有等待时间限制,使用link方式更加合适 三.动态创建script方式…
一.动态创建link方式 我们可以使用link的方式.如下代码所示. function addCssByLink(url){ var doc=document; var link=doc.createElement("link"); link.setAttribute("rel", "stylesheet"); link.setAttribute("type", "text/css"); link.setA…
一.script标签的位置 传统的做法是:所有script元素都放在head元素中,必须等到全部js代码都被下载.解析.执行完毕后,才能开始呈现网页的内容(浏览器在遇到<body>标签时才开始呈现内容),这在需要很多js代码的页面来说,会造成浏览器在呈现页面时出现明显的延迟,而延迟期间的浏览器窗口将是一片空白.因此.一般把script标签放在</body>标签前面. 二.嵌入脚本与外部脚本 尽可能使用外部脚本,理由如下: (1)将所有js文件放在一个文件夹中,再不触及HTML代码的…