【发布时间】:2013-04-22 07:51:29
【问题描述】:
我确实认为这是一个非常愚蠢的问题,并且有一个非常简单的答案,但我没有找到解决方案:
我有以下 JavaScript 函数:
function setStatus(order, operation, status, elem){
elem.parent().$(".active").removeClass("active");
elem.addClass("active");
}
Elem 是我的 HTML 中的图像元素,通过使用 alert(elem); 检查它的类型,我确定它是正确的元素
我得到的错误正是我所期望的:
对象# 没有方法'parent'
我已经知道这是因为 elem 是 DOM 元素而不是 JQuery 元素,这意味着无法使用像 parent() 和 addClass() 这样的函数。如何在我的 elem 上使用所有 JQuery 函数?有没有办法将 DOM 元素转换为 JQuery 元素?我在互联网上多次使用this 发现这个问题应该是$(this),但$(elem) 似乎不起作用。
【问题讨论】:
-
$(elem).siblings().removeClass("active").end().addClass("active");...? -
你为什么用
$(".active")? -
$(".active", $(elem).parent()).removeClass("active"); $(elem).addClass("active");alert() 不是记录/调试代码的最佳方式。改用 console.log($(elem));
标签: javascript jquery dom