javascript - 美元符号的 jquery basic - 命名与匿名

标签 javascript jquery

我有几个面试问题

  1. $(function(){});$(document).ready(function(){}); 有什么区别

  2. $(function(){});var func=function(){}; 有什么区别? ?

  3. 给定以下脚本

    <script language="javascript">
    $(function()
    {
       var id=$("cssID");
       //do something with your id
       //your event to be added here
    });
    </script>
    

    如何添加一个事件,比如 onmouseout 将对 id 起作用?

这是我的答案:

  1. 它们是相同的,都是在页面文档加载完成时运行

  2. 第一个是自动调用的,第二个是通过命名引用调用的;例如,func.called()

  3. 像这样:

    $(function()
    {
        var id=$("cssID");
        //do something with your id
        //Oki
        id.onmouseout
        (function(){
          //do something
        });
    });
    

但是我的教授说我在这三个方面都错了。她解释了我不确定也不敢问的事情,她对我很生气。正确答案是什么?为什么我的答案是错误的?

最佳答案

这些是 jQuery(又名 jQuery DOM Ready)中通常使用的不同类型的文档就绪函数。许多开发人员似乎在不知道为什么的情况下使用它们。因此,我将尝试解释为什么您可能会选择一个版本而不是另一个版本。将文档就绪函数视为在页面元素加载后触发的自执行函数。

参见 Where to Declare Your jQuery Functions有关如何使用文档就绪功能的更多信息。

文档就绪示例 1

$(document).ready(function() {
    //do jQuery stuff when DOM is ready
});

文档就绪示例 2

$(function(){ 
    //jQuery code here 
});

这等同于示例 1……它们的字面意思相同。

文档就绪示例 3

jQuery(document).ready(function($) {
    //do jQuery stuff when DOM is ready
});

文档就绪示例 4

(function($) { 
    // code using $ as alias to jQuery
  $(function() {
    // more code using $ as alias to jQuery
  });
})(jQuery);
// other code using $ as an alias to the other library

文档就绪示例 5

$(window).load(function(){  
     //initialize after images are loaded  
});

Here 是供您引用的链接。

关于javascript - 美元符号的 jquery basic - 命名与匿名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12084891/

相关文章:

javascript - $.jqx.dataAdapter 不是构造函数

jQuery 颜色变化只会短暂闪烁,不是永久性的

javascript - 禁用 Javascript 时可以播放幻灯片吗?

javascript - 将自定义 CSS 应用于 sapui5 磁贴

javascript - 提交后禁用 Ajax 按钮

javascript - 为什么 Angular 5 Transition 抛出 AppComponent.html :2 ERROR TypeError: Cannot read property 'forEach' of undefined

javascript - 如何更改或添加点击功能 js/css 以供移动使用

javascript - 如何在 Nodejs 流中正确处理异步操作

javascript - 将 base64 响应转换为 PDF

javascript - 如何从异步调用返回响应?