-5

我有两个脚本,我需要在 script2 中使用 script1 函数。最好的方法是什么?使用原型访问更多脚本中的功能是否有任何简化。我正在使用 jquery。

脚本1

$(function(){
 function  process(){
// some code
}
})

脚本2

$(function(){

// I would like to use the process function here

}
4

4 回答 4

1

您可以使用 javascript 函数作为变量。因此,只需重新阅读有关变量的相同问题的问题-无法访问变量

因此,只要这样做,您的函数就可以在全局范围内使用。

于 2012-08-21T06:18:30.477 回答
1

示例.html

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD>
    <script type="text/javascript" charset="utf-8" src="Script1.js" ></script>
    <script type="text/javascript" charset="utf-8" src="Script2.js" ></script>
    <script>
    </script>
    <BODY onload='calling();'>
    </BODY>
    </HTML>

脚本1.jc

function call(){
    alert("Hi i am called from script2");
}

Scrip2.js

function calling(){
    call();
}

希望这对您有所帮助。

于 2012-08-21T06:22:28.570 回答
1

只需将函数声明移到就绪事件处理程序之外,这将使其全局可用。

于 2012-08-21T06:26:13.007 回答
0

另一个想法:使用对象:

var Ob = {
   process: function(callback) {
     callback();
   }
}

脚本1

$(function(){
 Ob.process(function(){
      ... // code
   });
});

脚本 2(做同样的事情)

$(function(){
 Ob.process(function(){
      ... //another code
   });
});

如果您使用相同的process功能(意味着相同的正文内容,在两个脚本中制作相同的东西)然后

var Ob = {
   process: function() {
     ...//put code
   }
}

脚本1

$(function(){
 Ob.process();
});

脚本 2(做同样的事情)

$(function(){
 Ob.process();
});
于 2012-08-21T06:24:19.423 回答