什么';s";这";在JavaScript onclick中? 这里

什么';s";这";在JavaScript onclick中? 这里,javascript,Javascript,this在脚本中是什么意思?在您询问的情况下,this表示HTML DOM元素 因此,单击的是元素。此引用了onclick方法所属的对象。因此在func内部,this将是a元素和this的DOM节点。innerText将是此处它指的是onclick属性所属的元素: <a onclick="javascript:func(this)" >here</a> 函数func(e){ $(e).文本(“那里”); } )调用函数时,单词“this”是对调用函数的对象的引用 在您

this
在脚本中是什么意思?

在您询问的情况下,
this
表示HTML DOM元素


因此,单击的是
元素。

引用了
onclick
方法所属的对象。因此在
func
内部,this
将是
a
元素和
this的DOM节点。innerText
将是
此处
它指的是
onclick
属性所属的元素:

<a onclick="javascript:func(this)" >here</a>

函数func(e){
$(e).文本(“那里”);
}

调用函数时,单词“this”是对调用函数的对象的引用


在您的示例中,它是对锚元素的引用。在另一端,函数调用然后通过传递的参数访问元素的成员变量。

事件处理程序属性(如onclick)的值应该只是JavaScript,没有任何“JavaScript:”前缀。在URL中使用javascript:pseudo协议,例如:

<script type="text/javascript"
        src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">
</script>
<script type="text/javascript">
function func(e) {
  $(e).text('there');
}
</script>
<a onclick="func(this)">here</a>


不过,您应该优先使用
onclick=“func(this)”
表单。还要注意,在上面使用javascript:pseudo协议的示例中,“this”将引用窗口对象,而不是
元素。

在javascript
中,this
引用包含动作的元素。例如,如果您有一个名为
hide()
的函数:

使用
this
调用
hide
将隐藏元素。它只返回单击的元素,即使它与DOM中的其他元素类似

例如,您可能有
this
单击下面HTML中的一个数字只会隐藏单击的项目符号

function hide(element){
   element.style.display = 'none';
}
  • 1
  • 2
  • 3
  • 4
这里(这)是一个包含dom元素的所有特性/属性的对象。 你可以看到

<ul>
  <li class="bullet" onclick="hide(this);">1</li>
  <li class="bullet" onclick="hide(this);">2</li>
  <li class="bullet" onclick="hide(this);">3</li>
  <li class="bullet" onclick="hide(this);">4</li>
</ul>
这将显示具有层次结构的dom元素的所有属性。 您可以通过以下方法操作dom元素

请在以下链接中进行说明:-

在addEventListener事件中使用此关键字

函数getValue(o){ 警报(o.innerHTML); } 函数隐藏(当前){ current.setAttribute(“样式”,“显示:无”); } var bullet=document.queryselectoral(“.bullet”); 对于(项目符号中的变量x){ bullet[x]。onclick=function(){ 隐藏(这个); }; }; /*使用动态DOM事件*/ document.querySelector(“#li”).addEventListener(“单击”,函数(){ getValue(this);/*this=document.querySelector(#li)对象*/ });
li{
光标:指针;
}
    A
  • B

  • 1
  • 2
  • 3
  • 4

很有意思的否决票,虽然我认为严格来说,这个答案只是围绕问题提供建议,而不是直接回答问题。是的。。。你没有真正回答这个问题:-/没有什么私人问题@戴夫:很公平。在我写这篇文章的时候,主要问题已经得到了回答。我的回答可能应该是评论,但我怀疑我当时没有足够的代表添加评论。活到老学到老。当时没有足够的代表?吐出他的酒有人能链接到规格吗?天真的眼神是徒劳的。@JMCF125他无论如何都能发挥作用。我在谷歌上搜索了如何获取在onclick事件中单击的元素,最后在这里找到了答案?为什么这里的
不是这样的
@J3STER“javascript:”前缀在onclick中不正确。你可以在中找到解释。
<ul>
  <li class="bullet" onclick="hide(this);">1</li>
  <li class="bullet" onclick="hide(this);">2</li>
  <li class="bullet" onclick="hide(this);">3</li>
  <li class="bullet" onclick="hide(this);">4</li>
</ul>
console.log(this);