问题标签 [this]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
166 浏览

javascript - 处理“this”变化的最佳方式

我经常遇到使用 jQuery 编写 javascript 的一个问题是,当对象的方法涉及添加事件侦听器时,“this”从对对象的引用变为对触发事件的 DOM 元素的引用。

目前,如果我想从事件处理程序中引用对象,我会执行以下操作:

有没有更好的方法来处理事件总是想重新分配“this”的事实

0 投票
3 回答
6081 浏览

apache-flex - as3 类中的“this”引用到底是什么?

我已经在互联网上上下搜索过,即使是对“this”参考的最轻微提及,也没有发现任何东西!!!似乎根本没有人谈论“这个”。我是一位经验丰富的 c++ 程序员,所以我非常熟悉“this”指针/引用的概念。我的问题是 as3 类中的“this”引用到底是什么?尝试编辑它会引发编译器错误。将它分配给另一个类实例似乎复制了“this”“指向”的内容。我所有试图识别它的尝试都表明它与普通的变量类实例无法区分。我的最终目标是将一个类实例指向一个不同的实例,我一直在尝试确定是否可以使用“this”来简化流程。谢谢!

0 投票
4 回答
22130 浏览

javascript - 使用 JavaScript 原型对象时事件方法中的“this”关键字

我正在尝试在事件处理程序中访问 JavaScript 中原型类的成员变量——我通常会使用“this”关键字(或在事件处理程序的情况下使用“that”[this 的副本]) . 不用说,我遇到了一些麻烦。

举个例子,这个 HTML 片段:

这个 JavaScript 代码:

实例化 MyClass 对象并调用 NormalMethod 的工作方式与我期望的完全一样(警告说“值”),但是单击链接会导致未定义的值,因为“this”关键字现在引用事件目标(anchor () HTML 元素) .

我是 JavaScript 原型风格的新手,但在过去,使用闭包,我只是在构造函数中复制了“this”:

然后我可以通过“那个”对象访问事件方法中的成员变量。这似乎不适用于原型代码。还有另一种方法可以实现这一目标吗?

谢谢。

0 投票
2 回答
114 浏览

jquery - 如何使以下 jQuery 代码段工作?

如果模糊或按“Enter”,我想func运行。但是上面的代码只有在模糊时才有效,在按“Enter”的情况下,它会报告“Permission denied to access parentNode”。

虽然我知道它与this不同上下文中的关键字有关,但我不知道如何解决它。

0 投票
1 回答
2108 浏览

jquery - Jquery AJAX 调用:成功后 $(this) 不起作用

我想知道为什么 $(this) 在 jQuery ajax 调用之后不起作用。

我的代码是这样的。

为什么在 ajax 调用后 $(this) 在这种情况下不起作用?如果我在 ajax 之前使用它会起作用,但之后没有效果。

0 投票
2 回答
135 浏览

jquery - jQuery - IE6,7 not suporting $(this)?

Hey, I have a code, that works in all modern browsers, but not in IE 6,7.

It does the background-position change, but not the slideUp or slideDown, any idea why?

I thought it's because of the $(this), but I'm not sure, and if yes, is there a way to make it work?

Edit: Seems the problem might be in the 'next()' function.

0 投票
11 回答
238120 浏览

php - PHP 中的变量 $this 是什么意思?

我一直在 PHP 中看到这个变量$this,但我不知道它的用途。我从来没有亲自使用过它。

有人能告诉我这个变量$this在 PHP 中是如何工作的吗?

0 投票
1 回答
6461 浏览

jquery - Jquery $this 或 each() 一次指定一个链接

我发现 jQuery 很难学习,因为似乎有很多方法可以编写相同的东西。

作为练习,我想将锚标记中的文本填充到链接 href 属性中。

例如

成为

我的第一次尝试是

这显然不起作用,因为我需要指定为每个链接执行此操作。

我应该使用 foreach 循环吗?.each() 函数?还是 $this 表示法?他们都会工作吗?

0 投票
4 回答
2548 浏览

javascript - JS Object this.method() 通过 jQuery 中断

我确信有一个简单的答案,但现在是星期五下午,我累了。:(

不知道如何解释它,所以我将继续发布示例代码......


这是一个简单的对象:

这里正在使用它:

一切正常,除了最后一行。当 jQuery 调用 doSomething 方法时,它会覆盖 'this' 并阻止它工作。

尝试使用Stuff也不起作用。

那么如何以允许 jQuery 调用对象的方式引用对象自身的属性,并且还允许对象与调用 jQuery 对象一起工作呢?

即我希望能够做这样的事情:

(其中<CurrentObject><CallerElement>替换为适当的名称。)

0 投票
4 回答
753 浏览

jquery - 使用类继承时,在 jQuery 事件处理程序等对象中获取原始 this

我知道 jQuery 不是为使用类模型而设计的,但我确实可以扩展一个基类,因为它完全符合我的需求。

我开始做以下事情:

一切正常,我可以通过this. 直到我尝试添加诸如 jQuery 事件处理程序(等)之类的东西,它将事件目标应用于this.

因此,使用以下内容:

我发现了一些适用于 jQuery 的类创建和继承的东西(例如John Resig 的DUI),但那些会/确实遇到同样的问题。

那么在所有这些之后,在这些情况下我如何获得原件this

更新:事件处理程序(等)可以在jQuery.myBase插件本身或插件本身中。