zoukankan      html  css  js  c++  java
  • A tip when running javascript dynamically 朱燚:

    firefox works differently from ie when change src of a existing script , in ie this action cause the javascript engine to reload that script, and execute it ,while in firefox, nothing will happen

    you can have your own test by following code

    <script id="s1" type="text/javascript"> </script> <script language="javascript" type="text/javascript"> document.getElementById("s1").src="1.js";
    </script>
    in 1.js we simply alert some message
     
    alert("executed");

    So if you want the browser to execute some js dynamically , you need to reload the script element.  Add a script element into DOM will cause the execution of the script in both browser ,following code shows how to reload a script element

    if(this.element)
    this.element.parentNode.removeChild(this.element);
    this.element=document.createElement("SCRIPT");
    this.element.type="text/javascript";
    this.element.id = "MzJsonElement";
    this.element.src=url;
    document.getElementsByTagName(
    "HEAD")[0].appendChild(this.element);

    this might be helpful when  we need our browser to run some  json callback script

  • 相关阅读:
    JavaScript设计模式样例八 —— 适配器模式
    JavaScript设计模式样例七 —— 原型模式
    JavaScript设计模式样例六 —— 抽象工厂模式
    JavaScript设计模式样例五 —— 建造者模式
    JS比较两个时间的时间差
    使用nginx实现纯前端跨越
    npm的使用总结
    优雅的格式化时间显示
    优雅的封装ajax,含跨域
    将自己的域名代理到Gitpages
  • 原文地址:https://www.cnblogs.com/yizhu2000/p/990833.html
Copyright © 2011-2022 走看看