繁体   English   中英

jQuery 美元符号混淆

[英]jQuery Dollar Sign Confusion

我对 jQuery 中的美元符号有点困惑,希望有人能帮助我。

我有以下 function 声明:

$(function() {
    $( "#create-discussion" ).button().click(function() {
        alert("Clicked");
    });

    $( "#listitems tr" ).click(function(event) {
        alert("clicked");
    });
});

出于某种原因,“创建讨论”按钮的第一个 function 声明可以正常工作; 单击时,会出现一个弹出窗口。 但是,第二个不起作用,当我单击表格行时不会生成弹出窗口。

这是关于按钮 onClicks 与表格行 onClicks 的一些细微差别吗? 我错过了一些愚蠢的事情吗?

另外,我认为如果有人解释了$(function() {})的实际作用,那会有所帮助,因为我将其视为$(document).ready() ,我不确定我是否可以这样做那。

美元符号 ( $ ) 实际上是jQuery function 的别名。 根据文档,如果您将回调作为参数传递给此 function,它将在 DOM 就绪时执行

当涉及到问题的第二部分(关于为什么代码的第二部分不起作用)时:只需检查选择器。 对我来说它工作得很好(参见jsfiddle - 它没有.button()方法,因为我没有加载 jQuery UI),所以这可能是由不正确的选择器引起的。

只要您的选择器文本“#listitems tr”对 select 有效,您所做的就应该有效。

您可以通过以下方式进行测试...如果结果为 0,则表示 jQuery 未找到任何有效项目

alert($("#listitems tr").length);

当您拨打电话时

$("a").click(function(evt) { alert("hello world!"); });

您正在将点击事件绑定到页面上的所有 <a> 标记。 你可以很好地做同样的事情......

$("a").click(myFunc);
function myFunc(evt) { alert("hello world!"); }

点击 function 可以连接到任何 html 元件。 它不必是按钮,也可以是 ,等等。该元素甚至不必是可见的,尽管只有在调用实际事件时才能触发点击...

$("a").click();

$("...") 只是键入 jQuery("...") 的简写

希望这能回答你的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM