javascript - 是否有可能的 javascript 函数返回新的 DOM 元素但使用 jQuery 创建
问题描述
例子:
function getNewElement(elementName, elementClass) {
return $('<p>')
.addClass(elementClass)
.text(elementName);
}
然后我可以像这样重用它:
const paragraph = getNewElement('test', 'some-class');
const paragraphSecond = getNewElement('test2', 'some-class2');
有没有办法运行代码或任何类似的方法?谢谢
解决方案
jQuery 对象中的第 0 项是本机 DOM Element 对象。因此,只需添加[0]
到return
函数中的语句即可获得所需的输出:
function getNewElement(elementName, elementClass) {
return $('<p>').addClass(elementClass).text(elementName)[0];
}
const paragraph = getNewElement('test', 'some-class');
console.dir(paragraph);
const paragraphSecond = getNewElement('test2', 'some-class2');
console.dir(paragraphSecond);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
话虽如此,从函数返回一个 jQuery 对象并没有本质上的错误,这将阻止它被重用。任何问题只会来自您在以后的逻辑中如何使用函数的结果。
推荐阅读
- angular - 当我按顺序调用函数时,变量值设置不正确
- html - 如何将 svg 徽标转换为动画?
- google-maps - SBL-EAI-04116:“数据发送”期间的 HTTP Internet 异常:“安全通道支持中发生错误”,代码:“12157”
- c#-4.0 - 这背后的逻辑是什么
- html - 如何使用 flexbox 使卡片响应?
- swift - 当用户在 swift 中搜索搜索栏中的联系人时如何使用复选框进行联系人
- javascript - Angular - 如何用另一个对象替换对象属性?
- c# - 由于其他触发器,WPF 触发器无法正常工作
- virtual-machine - 将 VMDK 文件转换为压缩的 RAW 文件
- node.js - 修改测试API request-response时express发送的请求对象