2015-12-02 64 views
-1

为了使一个普通的JS函数在任何地方都可以访问,我只需要在jQuery(document).ready(function($){})之外声明它。但是如果这个JS函数包含jQuery的东西呢?那么我怎样才能让它从任何地方访问,特别是来自不同的JS文件?如何使jQuery函数可以从任何地方访问?

+0

你在你的头加载的jQuery。这使得jquery可以在任何地方访问。将多个脚本载入页面就像注入代码一样。按照正确的顺序定义一个函数,第二个脚本可以访问它。 –

+0

你必须想象,所有的javascript都会按照它们被加载到页面的顺序运行,所以如果包含了jQuery,那么之后的任何脚本都可能使用它(这不一定意味着它应该*或者它会从中受益)。 – Neil

+0

另请参阅[this question](http://stackoverflow.com/questions/3809862/can-we-call-the-function-written-in-one-javascript-in-another-js-file) – Draco18s

回答

1

完全一样。只要您在功能之前包含jQuery即可。

所以

<script src="jquery.js"></script> 
<script src="yourglobalfunctionshere.js"></script> 
<script src="documentreadystuff.js"></script> 
<script> 
jQuery(document).ready(function($){ 
    //or here some stuff 
}) 
</script> 
+0

不如果你在注入'$',那么这需要成为一个IIFE? –

+0

@SterlingArcher不,请看这里; http://www.sitepoint.com/types-document-ready/ –

+1

@SterlingArcher不,这是文档就绪处理程序的简写,它传递'$'作为准备处理程序中的jQuery引用。 'ready'伪事件处理程序的第一个参数总是'jQuery':'但是,传递给.ready()方法的处理程序可以接受一个参数,该参数传递给全局jQuery对象。这意味着我们可以在.ready()处理程序的上下文中重命名对象,而不会影响其他代码 –

相关问题