Jquery:从不同文档调用函数
我在“custom.js”文件中保存了一些Jquery函数。在某些页面上,我需要将PHP变量传递给Jquery,因此一些Jquery位需要保留在HTML文档中。然而,由于我现在正试图将事情重构到最低限度,我被以下几点绊倒了: 如果我把它放在custom.js中:Jquery:从不同文档调用函数,jquery,function,external,Jquery,Function,External,我在“custom.js”文件中保存了一些Jquery函数。在某些页面上,我需要将PHP变量传递给Jquery,因此一些Jquery位需要保留在HTML文档中。然而,由于我现在正试图将事情重构到最低限度,我被以下几点绊倒了: 如果我把它放在custom.js中: $(document).ready(function() { function sayHello() { alert("hello"); } } 在HTML文档中: <script type="text/
$(document).ready(function()
{
function sayHello() {
alert("hello");
}
}
在HTML文档中:
<script type="text/javascript">
$(document).ready(function()
{
sayHello();
});
</script>
$(文档).ready(函数()
{
你好;
});
。。。该函数未被调用。但是,如果两者都放在HTML文档中,则该函数可以正常工作
是否需要为函数声明某种公共属性,或者如何让HTML中的Jquery函数与外部的.js文件通信?它们被正确地包括在内,否则工作正常
谢谢。问题是您在这一行声明的匿名函数中定义了
sayHello
:
$(document).ready(function()
因此,sayHello
的作用域仅限于该函数。如果您希望从应用程序中的任何其他位置调用sayHello
,例如页面上的HTML或custom.js中的另一行,则需要更改custom.js并在调用$(文档)之外定义它。准备好了吗
:
function sayHello()
{
alert("hello");
}
$(document).ready(function()
{
sayHello();
}
只需将函数设为全局变量
sayHello=function() {
alert("hello");
}
谢谢——当然,这很有道理。将接受您的答案,需要等待时间限制。将jquery容器设置为var是否也有效?比如
sayHello=$(document).ready(function(){…