And*_*old 9 html javascript jquery dom
如果我们有这样的示例结构:
HTML
<div id="foo">hello foo</div>
Run Code Online (Sandbox Code Playgroud)
JS
var $foo = $('#foo');
Run Code Online (Sandbox Code Playgroud)
我们需要使用jQuery的.replaceWith方法替换给定的jQuery /节点引用的整个HTML标记,分别维护获得新节点引用的最佳实践是什么?
问题,.replaceWith返回对旧 jQuery对象的引用(这对我来说听起来或多或少是不合理的).来自文档:
但是,必须注意返回原始jQuery对象.此对象引用已从DOM中删除的元素,而不是已替换它的新元素.
如果我喜欢
$foo = $foo.replaceWith('<div>new content</div>');
Run Code Online (Sandbox Code Playgroud)
我想在同一个变量中引用/缓存新节点.是的,您可以重新查询新插入的DOM节点,但这在我看来非常笨重.
有没有任何棘手的方法来实现这一点,而无需重新查询DOM?
使用.replaceAll()功能:
$foo = $('<div>new content</div>').replaceAll($foo);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1850 次 |
| 最近记录: |