当前位置: 首页 > 知识库问答 >
问题:

click()调用click函数而不返回click函数

陆斌
2023-03-14

我在学习Java剧本MOOC的第一天。

我们正在查看简单的jQuery示例。

有件事我不明白。

$(“#xyz”).html()这样的表达式返回元素中的文本。例如,如果对应的html是

,则 $(“#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()返回一个函数,而不是一个数字。

我糊涂了吗?这里的逻辑是什么?

共有1个答案

宗乐池
2023-03-14

.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>
 类似资料:
  • 问题内容: 故事: 在StackOverflow上,我看到用户报告说他们无法通过selenium WebDriver“单击”命令单击元素,并且可以通过执行脚本来解决JavaScript单击问题。 Python中的示例: WebDriverJS /量角器中的示例: 问题: 为什么在常规WebDriver单击不起作用时单击“通过JavaScript”有效?这到底是什么时候发生的,这种解决方法(如果有)

  • 故事: 在StackOverflow上,我看到用户报告说他们不能通过selenium WebDriver“click”命令单击元素,而可以通过执行脚本使用JavaScript单击来解决这个问题。 Python中的示例: WebDriverJS/Protractor中的示例: 问题是: 为什么点击“Via JavaScript”可以工作,而常规的WebDriver点击却不行?这到底是什么时候发生的,

  • 问题内容: 在StackOverflow上,我看到用户报告说他们无法通过selenium WebDriver“单击”命令单击元素,并且可以通过执行脚本来解决JavaScript单击问题。 Python中的示例: WebDriverJS /量角器中的示例: 问题: 为什么在常规WebDriver单击不起作用时单击“通过JavaScript”有效?这到底是什么时候发生的,这种解决方法(如果有)的缺点是

  • 问题内容: 我有一个简单的跨度 此范围在表内,每行都有一个删除范围。 然后,当单击该跨度时,我使用AJAX调用URL。AJAX事件需要知道该行的对象ID吗?使该ID进入点击功能的最佳方法是什么? 我以为我可以做这样的事情 但是ID不能以数字开头吗?对?那我以为我可以 然后从ID中删除“我的”部分,但这似乎很Yu! 以下是我的点击事件以及我的AJAX事件所在的位置。 我确定有一个不错的方法吗? 注意

  • 问题内容: 码: 上面的代码不起作用。当我单击#clicker时,它不会发出警报,也不会隐藏。我检查了控制台,没有任何错误。我还检查了JQuery是否正在加载,实际上是否正在加载。所以不确定是什么问题。我还执行了带有警报的文档就绪功能,并且该功能正常工作,因此不确定我在做什么错。请帮忙。谢谢! 问题答案: 您应该在一个块中添加javascript代码。 即 正如jQuery文档指出的那样:“在文档

  • 问题内容: 我有这样的按钮 还有这个 上面的代码工作正常,但我想使其动态化。 所以我像下面这样改变它。 这行不通,我不知道为什么,尽管如果我检查元素,上面的代码会生成如前所述的正确代码。 问题答案: 括号符号的使用: 指向当前作用域对象,因此您可以通过变量名称访问方法。