我问这个问题只是为了更好地理解 jQuery。我注意到一些 jQuery 方法仅在目标和选择器的顺序上有所不同。例子:
$('img').replaceWith('<p>Hello</p>'); // target --> selector (or content)
$('<p>Hello</p>').replaceAll('img'); // selector --> target
但这似乎是它们完全可逆的唯一方法。例子:
$('img').replaceWith(Hello); // works
$(Hello).replaceAll('img'); // breaks
$('img').replaceWith('.foo'); // breaks
$('.foo').replaceAll('img'); // works
$('img').replaceWith($('.foo')); // works
$($('.foo')).replaceAll('img'); // works but is unnecessary
我只明确测试了上面的例子,但我认为这些规则同样适用于:
- 之前()和插入之前()
- prepend() 和 prependTo()
- 附加()和附加到()
- 之后()和插入之后()
我在这里看到的一般规则是什么?每次遇到这样的情况,我宁愿不要猜测和检查。