javascript - 如何在单击元素时撤销外部功能?

标签 javascript jquery html

这是我的代码:

$(function(){ // ready

  function myfunc($el){
      $el.text("You clicked ..!");
  }

  $("div").click(myfunc($(this)));
  
})
div{
  padding: 20px;
  border: 1px solid gray;
  cursor: pointer;
  text-align: center;
}

div:hover{
  background-color: #f1f1f1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div>Click Here</div>

为什么点击后文字没有变化?

最佳答案

要传递变量/参数,您需要执行类似的操作才能使其工作

$("div").click(function(){myfunc($(this))});

堆栈片段

$(function(){ // ready

  function myfunc($el){
      $el.text("You clicked ..!");
  }

  $("div").click(function(){myfunc($(this))});
  
})
div{
  padding: 20px;
  border: 1px solid gray;
  cursor: pointer;
  text-align: center;
}

div:hover{
  background-color: #f1f1f1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div>Click Here</div>

<小时/>

要进行更简单的函数调用,您可以这样做并利用事件。

$(function(){ // ready

  function myfunc(e){
      $(e.target).text("You clicked ..!");
  }

  $("div").click(myfunc);
  
})
div{
  padding: 20px;
  border: 1px solid gray;
  cursor: pointer;
  text-align: center;
}

div:hover{
  background-color: #f1f1f1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div>Click Here</div>

关于javascript - 如何在单击元素时撤销外部功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50314624/

相关文章:

javascript - 使用 jquery.append() 附加一个类为 "modal-trigger"的 div 不起作用

javascript - jquery 将类添加到具有特定 z-index 的 div

Javascript - 按类和文件获取元素[0]

javascript - Google Analytics 无法在 Django 网站上运行

javascript - jQuery XML 解析/操作 IE8 错误

javascript - Kendo UI Grid 多层层次结构(n-levels of hierarchy)

javascript - AJAX PHP 在运行中进行几次操作后发送和取回文本

html - 在浏览器中有效地表示大网格

javascript - 使用jquery生成html表时设置下拉选择值

javascript - 如何在没有javascript的情况下在html中显示unicode?