我从web设计开始,我在外部文件中遇到了javascript函数的问题: 我的函数javascript是这样的:
function log()
{
alert("something");
$('#content').load('mod/lo.php');
}
我在html中调用此函数是这样的:
<script>log()</script>
并且脚本仅显示警报,忽略函数加载。 但是,如果我这样调用函数:
<script>$(log);</script>
工作正常,显示警报并且负载正常工作。
这些电话形式的区别是什么?
我已经搜索了这个,但几乎所有页面都说要调用一个函数只放<script>function();</script>
谁能解释一下这种形式的电话的不同之处?使用参数时有问题吗?
谢谢,抱歉我的英语不好。
答案 0 :(得分:7)
$
语法是一个jQuery简写,它实际上意味着在文档加载时调用此函数。它和写作完全一样:
$(document).ready(function() {
alert("something");
$('#content').load('mod/lo.php');
});
这可能表示脚本执行时ID为content
的DOM项目尚不存在。这样做的结果是jQuery选择器$('#content')
将返回0,这会阻止load()
被调用。文档完全加载后,它将出现,您的load()
将会执行。
答案 1 :(得分:0)
不同之处在于,当您调用<script>$(log);</script>
时,您实际上正在调用$(document).ready(log() {});
并且Jquery正在执行其代码。在<script>log()</script>
的情况下,页面尚未加载,并且不执行jquery代码。