$(function(){})是什么?做?

2020/10/14 23:01 · javascript ·  · 0评论

有时我会创建一个函数,稍后再调用该函数。

例:

function example { alert('example'); }
example(); // <-- Then call it later

不知何故,某些功能无法调用。我必须在内部调用这些函数:

$(function() { });

做什么$(function() {});(function() { });意味着,什么是这些区别/目的是什么?

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

只是jQuery的简写

$(document).ready(function() { ... });

它的设计宗旨(除其他事项外)是确保一旦准备好使用页面的所有DOM元素,就可以调用您的函数。

但是,我不认为这是您遇到的问题-您能否阐明“以某种方式,某些函数无法调用,而我必须在内部调用这些函数”的含义?也许发布一些代码来显示什么无法正常工作?

编辑:重新阅读您的问题,可能是您的函数在页面加载完成之前正在运行,因此无法正确执行;将其放入$(function)确实可以解决该问题!

以下是jQuery函数调用:

$(...);

这就是“ jQuery函数”。$是一个函数,$(...)您是否正在调用该函数。

您提供的第一个参数如下:

function() {}

该参数是您指定的$函数,并且在DOM完成加载后,该函数将调用提供的方法。

它只是的简写$(document).ready(),如:$(document).ready(function() {
YOUR_CODE_HERE
});
有时您必须使用它,因为您的函数在DOM完成加载之前就已运行。

此处介绍了所有内容:http//docs.jquery.com/TutorialsIntroducing_ $(document).ready()

我认为您可能将Javascript与jQuery方法混淆了。香草或纯Javascript类似于:

function example() {
}

这种性质的功能可以随时随地调用。

jQuery(基于Javascript的库)具有内置的功能,这些功能通常要求在调用DOM之前完全渲染它。完成此操作的语法为:

$(document).ready(function() {
});

因此,通常在该方法中调用jQuery函数,该函数通常$or开头jQuery

$(document).ready(function() {        
    // Assign all list items on the page to be the  color red.  
    //      This does not work until AFTER the entire DOM is "ready", hence the $(document).ready()
    $('li').css('color', 'red');   
});

该块的伪代码为:

$(document)准备好文档对象模型后.ready(),请调用以下函数function() { }在该函数中,检查<li>页面上的所有内容,$('li')然后使用jQuery方法.CSS()将CSS属性“ color”设置为值“ red”.css('color', 'red');

这是的快捷方式$(document).ready(),当浏览器完成页面加载(即“ DOM可用时”)时执行。参见http://www.learningjquery.com/2006/09/introducing-document-ready如果您试图example()在浏览器完成页面加载之前进行调用,则该页面可能无法正常工作。

一些理论

$是函数的名称,就像您为函数指定的任何其他名称一样。任何人都可以使用JavaScript创建一个函数,并将其命名$,如下所示:

$ = function() { 
        alert('I am in the $ function');
    }

JQuery是一个非常著名的JavaScript库,他们决定将整个框架放在名为的函数中jQuery为了使人们更容易使用该框架并减少jQuery每次要调用该函数时键入整个单词的时间,他们还为其创建了一个别名。该别名为$因此$是函数的名称。在jQuery源代码中,您可以自己看到以下内容:

window.jQuery = window.$ = jQuery;

回答你的问题

那么$(function(){});是什么?

现在您已经知道$函数的名称,如果您使用的是jQuery库,那么您将调用命名的函数并将$参数传递给function() {}它。jQuery库将在适当的时间调用该函数。什么时候合适?根据jQuery文档,适当的时间是页面的所有DOM元素都准备好使用。

完成此操作的另一种方法是这样的:

$(document).ready(function() { });

如您所见,这比较冗长,因此人们更喜欢 $(function() { })

因此,正如您已经注意到的那样,无法调用某些功能的原因是因为这些功能尚不存在。换句话说,DOM尚未加载。但是,如果将它们放在$作为参数传递给的函数中,则DOM将在那时加载。因此,该功能已创建并可以使用。

另一种解释方式$(function() { })是这样的:

嘿$或jQuery,一旦DOM加载完毕,您可以调用我作为参数传递的函数吗?

本文地址:http://javascript.askforanswer.com/functionshishenmezuo.html
文章标签: ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!