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

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

这是代码。

的HTML

<area shape="rect" coords="103, 0, 213, 25" href="#" onClick="swap3($(this),'product-details','product-specs');">


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"});
}

10-07 17:23