我可以使用$(this)作为javascript变量吗?

我正在写一个函数,需要知道点击的div的位置。

我想知道我是否可以将点击对象的位置作为javascript变量?

这是代码。

HTML

 

使用Javascript:

 function swap3(currentDivId ,oldDivId, newDivId) { var oldDiv = currentDivId.nextAll("div." + oldDivId); var newDiv = currentDivId.nextAll("div." + newDivId); oldDiv.style.display = "none"; newDiv.style.display = "block"; } 

$()返回一个DOM元素 (就像你可以使用它的方法属性等对象),如果你设置一个变量,那么变量必须正确地像jQuery-Object一样工作。 但根据我的经验,有时候不这样做 ! 我学习最好的方法是通过jQuery-selector( $ )获取变量。 您的代码是正确的,但如果您应用这些更改应该更好:

 function swap3(currentDivId ,oldDivId, newDivId) { var oldDiv = $(currentDivId).nextAll("div." + oldDivId); var newDiv = $(currentDivId).nextAll("div." + newDivId); $(oldDiv).css({"display" : "none"}); $(newDiv).css({"display" : "block"}); } 

this指的是当前元素。

在jQuery中,因为他们使用$()来获取元素, $(this)返回jQuery相当于vanilla JS的。