DANCE WITH JAVA

          開發出高質量的系統

          常用鏈接

          統計

          積分與排名

          好友之家

          最新評論

          在一個js文件中引入另一個js文件

          第一個js文件(被引入的js文件),文件名one.js,內容如下
          function alertInOne(){
              alert(
          'in one');
          }

          第二個js文件,文件名two.js,內容如下
          //注意這個地方
          document.write("<script language='javascript' src='one.js'></script>");
          function alertInTwo()
          {
              alert(
          "in Two");
          }

          調用的html文件,只需要引入two.js,就能引入one.js了
          <script language='javascript' src="two.js"></script>
          <script language="javascript">
              alertInOne();
              alertInTwo();
          </script>

          應用場合:
          在平時開發的時候,我們都會有一些js文件的積累,大部份場合是不需要重新寫的。
          但我們會把js文件的功能盡可能的細分,以便引入的時候不引入無用的代碼,但這樣造成的問題是在jsp文件
          中要寫大量的這樣的句子
          <script language='javascript' src="two.js" charset="utf-8"></script>
          如果你有100個jsp文件,都用到10個js文件,這個時候每個jsp文件寫10句引入,這個是個麻煩的事情
          現在,通過js文件的引入可以解決這個問題。定義一個js文件用來引入一些組合,jsp文件則只需要引入1個
          這樣的js文件就可以了。js代碼少了100*99行

          另外引入的js文件時候最好加上charset,特別是你的js文件有非英文,數字的時候。
          事例的代碼下載:http://www.aygfsteel.com/Files/dreamstone/importJs.rar

          posted on 2007-02-12 17:00 dreamstone 閱讀(50291) 評論(6)  編輯  收藏 所屬分類: jdk相關 、腳本語言javascript

          評論

          # re: 在一個js文件中引入另一個js文件 2007-02-20 09:51 kedou

          這種邏輯是對的,但是有時如果一個公共js所包含的js太多,而引用此js的html又不需要把它們全部引入進來,這樣是不是對網頁加載速度有引響,所以我通常是需要引入哪個js就直接引入,因為通常情況下告個頁面所需的js會不相同  回復  更多評論   

          # re: 在一個js文件中引入另一個js文件 2007-09-10 14:06 leonzhu

          但有個問題,這種方法是不能在 two.js 中用 one.js 中定義的函數。
          瀏覽器似乎是先解析直接被 html 用的 two.js
          在兩個文件中加 alert 即可發現。
          所以,這種方案并不完美。
          暫時未找到解決辦法。  回復  更多評論   

          # re: 在一個js文件中引入另一個js文件 2007-09-10 14:48 dreamstone

          @kedou
          為什么要在一個js文件中引入太多 ?
          體重這種方法并不是讓所有的頁面都這么處理,簡單的引入1-2個js的直接引入就ok了,但有些比較復雜的比如我的自定義js文件中會有一個專門處理字符串的
          比如trim ,判斷長度(能區別漢字和字幕混合的),判斷非空,是否半角等
          有一個處理日期的:驗證各種格式的日期
          有專門的用來校驗各種數字的。
          專門用來校驗禁止的,禁止輸入非數字,禁止復制,禁止拖放,禁止某個鍵等等
          這些是基本每個都要用到的。
          還有寫不是最常用的,比如ajax的封裝
          比如treeviewer
          比如tableviewer的插刪改
          比如關聯列表
          比如動態生成控件
          如果用到的是不常用的就直接引入,不用文中提到的方式。
          但上邊常用的就需要每個都引入,所以可以把常用的用文中提到的方式統一起來。
          而且統一起來的方式和分別引入不是互斥的,可以自己靈活掌握。  回復  更多評論   

          # re: 在一個js文件中引入另一個js文件 2007-09-10 14:50 dreamstone

          @leonzhu
          不知道你怎么嘗試的,我這里是可以的。
          one.js不變
          function alertInOne(){
          alert('in one');
          }

          two.js中調用one.js中的函數
          document.write("<script language='javascript' src='one.js'></script>");
          function alertInTwo(){
          alertInOne();
          alert("in Two");
          }

          html中調用,沒有問題
          <script language='javascript' src="two.js"></script>
          <script language="javascript">
          //alertInOne();
          alertInTwo();
          </script>
            回復  更多評論   

          # re: 在一個js文件中引入另一個js文件 2013-01-06 09:45 yahoo

          @leonzhu
          @樓主

          你們之間有一個差別:
          document.write("<script language='javascript' src='one.js'></script>");
          其中 src='one.js' 中路徑的差別

          原因:由于是調用方法document.write() ,所以當 html 文件引入two.js 時調用的應該以html 為基準的路徑,而非two.js為基準的路徑。

          如果引入路徑 src='one.js' 是以html文件相對one.js 的路徑,那么就不會有問題了  回復  更多評論   

          # re: 在一個js文件中引入另一個js文件 2013-04-25 17:54 lsw521314

          好強悍的論證!@dreamstone
            回復  更多評論   

          主站蜘蛛池模板: 牙克石市| 沂南县| 南木林县| 德惠市| 嘉兴市| 镇赉县| 蓬溪县| 江都市| 于田县| 定州市| 庄河市| 乌拉特中旗| 沭阳县| 浦城县| 正阳县| 兴国县| 清流县| 武义县| 公主岭市| 湖州市| 锡林浩特市| 射阳县| 宁河县| 洛川县| 桂阳县| 蛟河市| 芦山县| 桓台县| 德钦县| 庆元县| 澄江县| 新巴尔虎左旗| 抚顺县| 登封市| 太保市| 交口县| 修水县| 蓬溪县| 班戈县| 满城县| 石楼县|