gpt4 book ai didi

jquery - 为什么 jQuery API 文档中列出的处理函数带有参数?

转载 作者:行者123 更新时间:2023-12-01 03:17:14 24 4
gpt4 key购买 nike

在 jQuery 手册本身中,它显示了 blur功能为:

.blur(handler(eventObject)) // PLUS 2 OTHER VARIATIONS 

所以对我来说使用这个函数你会得到这样的结果:

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<form>
<input id="target" type="text" value="Field 1" />
<input type="text" value="Field 2" />
</form>
<div id="other">Trigger the handler</div>
<script>
$('#target').blur(myhandler(evObj));

function myhandler(evObj) {
console.log(evObj);
};
</script>
</body>
</html>

但是 $('#target').blur(myhandler(evObj)); 不是正确的语法,正确的语法实际上是 $('#target').blur( myhandler);

所以总的来说,脚本标签的整个代码应该是:

<script>
$('#target').blur(myhandler);

function myhandler(e) {
console.log(e);
};
</script>
  1. 为什么会这样?
  2. 人们怎么知道不应该写 .blur(handler(eventObject))

最佳答案

您是正确的,技术上正确的语法是

blur(handler)

但是,这实际上并不是很有用,因为如果您正在查看文档,您可能想知道处理程序接收哪些参数。很明显,您使用函数作为其唯一参数来调用blur,因此jQuery文档par abus de notation写道

blur(handler(eventObj))

指示处理函数采用一个参数,即事件对象。

关于jquery - 为什么 jQuery API 文档中列出的处理函数带有参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14258356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com