gpt4 book ai didi

javascript - 从 JQuery 对象创建 Javascript 对象

转载 作者:行者123 更新时间:2023-12-01 02:26:33 25 4
gpt4 key购买 nike

目前我正在对以下代码进行单元测试:

if ($(selectedElement).innerText == 'blah')
{
// do something
}

selectedElement 是从 UI 中选择的 anchor 对象。

在我的测试代码中,我创建了一个 DOM 结构,该结构将该 anchor 放在适当的位置以供选择。这里的问题是,由于 selectedElement 最初是一个 javascript 对象,因此我需要转换从 DOM 结构(这是一个 JQuery 对象)获得的 anchor ,以便进入上述条件。

我尝试了以下方法,但没有成功:

// DOM structure using HtmlDoc
/*:DOC += <span id='testSpan' class='testSpanClass'><a href='#' id='selectedElem'>blah</a></span> */
selectedElement = $('#selectedElem')[0];

我的目标是能够使用普通的 Javascript 对象来满足条件,并且能够将其切换回 jQuery 对象来满足函数下面的条件。但如果有更好的方法,我会尝试一下。

有人对如何解决这个问题有任何想法吗?

编辑:是否有不需要更改代码的解决方案? selectedElement实际上是一个全局变量。

谢谢。

最佳答案

我不确定您在什么浏览器中进行测试,但 innerText 是仅 IE 的属性。由于您已经在使用 jQuery,我建议您只需在所选元素上调用 .text() 方法,如下所示:

selectedElement = $('#selectedElem')[0]; // Get DOM element

if ($(selectedElement).text() == 'blah')
{
// do something
}

获取 DOM 对象的方法很好: $('#selectedElem')[0] 或 $('#selectedElem').get(0) 等效,但第一个在大循环中速度更快.

关于javascript - 从 JQuery 对象创建 Javascript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1794138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com