我在Windows Server 2008 Enterprise中使用SharePoint Server 2007 Enterprise。我正在使用VSTS 2008 + C#+ .Net 3.5 + ASP.Net进行开发。我正在学习以下处理javascript的代码,我的混淆是$(function(){...}部分代码,什么时候会被调用,它的功能是什么?我没有看到任何代码调用这个函数。 / p>
<!doctype html>
<html lang="en">
<head>
<title>Test</title>
<link type="text/css" href="tabcontrol/themes/base/ui.all.css" rel="stylesheet" />
<script type="text/javascript" src="tabcontrol/jquery-1.3.2.js"></script>
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
</head>
<body>
<div class="demo">
<div id="tabs">
<ul>
<li><a href="#tabs-1">tab1</a></li>
<li><a href="#tabs-2">tab2</a></li>
</ul>
<div id="tabs-1">
<p>tab1 info</p>
</div>
<div id="tabs-2">
<p>tab2 info</p>
</div>
</div>
</div>
</body>
</html>
提前谢谢,
乔治
答案 0 :(得分:9)
它来自您所包含的jQuery库:
<script type="text/javascript" src="tabcontrol/jquery-1.3.2.js"></script>
$
是jQuery
函数的别名。
请参阅jQuery(callback) reference documentation:
$(document).ready()
的简写。允许您绑定DOM文档加载完成后要执行的函数。此函数的行为与
$(document).ready()
类似,因为它应该用于在页面上包装依赖于准备运行的DOM的其他$()操作。虽然这个功能在技术上是可链接的 - 但实际上并没有太多用于链接它的功能。
答案 1 :(得分:6)
the document is ready时会调用它。它相当于:
$(document).ready(function() {
...
});
Document.ready表示该页面已在客户端上完全加载。 WebParts是服务器端控件,将首先处理,以生成发送到客户端的html文档。因此,在document.ready客户端事件触发之前将处理webpart。
加载事件在文档末尾触发 装货过程。在这一点上,所有的 文档中的对象在 DOM,以及所有图像和子帧 已经完成加载。
答案 2 :(得分:2)
$(function(){
});
是jQuery(Javascript库)的简写:
$(document).ready(function(){
});
这是你用<body onload="xxx">
做的,但更复杂。您可以获得更全面的解释here。
答案 3 :(得分:2)
这是jQuery中使用的简写,在我看来这是一个绝对不清楚和不必要的简写。不久前,我们曾写过:
$(document).ready(function() {
$("#tabs").tabs();
});
现在我们也可以写这个来做上面的事情:
$(function() {
$("#tabs").tabs();
});
传递给$(document).ready的函数在页面加载并且DOM准备就绪时执行,换句话说,文档已加载到内存中。此代码编写在jQuery中,这是一个使DOM操作更容易的Javascript库。
以上代码转换为普通Javascript:
window.onload = function() {
$("#tabs").tabs();
};
其中window
是表示页面window的全局对象。
答案 4 :(得分:2)
我不确定您为何标记了您的帖子“SharePoint”,但请注意,这不是在SharePoint网页上支持的。 您需要在堆栈上推送在页面加载上运行的脚本,SharePoint将执行它们。语法是:
_spBodyOnLoadFunctionNames.push("myOnloadFunction");
这将需要javascript fu:
function myOnloadFunction()
{
$("#tabs").tabs();
}
可用,可以执行你的onload代码。
答案 5 :(得分:1)
这是一个jQuery调用,当文档加载时会调用它。
的更多信息答案 6 :(得分:1)
该语法是
的别名$(document).ready(function(){});
这个事件在jQuery中用于在DOM准备好后立即调用脚本。它就像window.onload,但不会等待所有图像在发射前完全加载。