我在学习Java剧本MOOC的第一天。
我们正在查看简单的jQuery示例。
有件事我不明白。
像$(“#xyz”).html()
这样的表达式返回元素中的文本。例如,如果对应的html是
,则hello world
$(“#xyz”).html()
计算为字符串“hello world”。我希望到目前为止我明白了这一点。而$(“#xyz”).html(“new text”)
将文本设置为“new text”
,以便下一次调用$(“#xyz”).html()
时返回“new text”
。
并且,表达式$(“#xyz”).click(函数(){42})
将click函数设置为返回42
的函数。然而,课程的主讲人没有解释地声称$(“#xyz”).click()
调用click函数并返回42
。我希望$(“#xyz”).click()
返回一个函数,而不是一个数字。
我糊涂了吗?这里的逻辑是什么?
.Click
已重载。有点让人摸不着头脑。您可以使用它来调用click处理程序,或者添加click处理程序。
如果您传递给它一个函数,它会添加一个click处理程序。如果您不向它传递任何内容,它将调用click处理程序。
null
// Add a click handler
$('button').click(() => { console.log('clicked'); });
// Invoke a click handler
$('button').click();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button>click</button>