Created by: glebm
When a DOM node is passed to an HTML tooltip, the node is only moved
if it is not already in the tooltip. If a DOM node is passed to a plain text
tooltip, its text is copied via jQuery .text().
Replaces .detach() with .empty(), as .detach() is almost never
useful but instead leaks memory. The difference between empty and
detach is that the latter keeps all the attached jQuery events/data.
However, since we do not return the previous children, the user would
have to keep these themselves, thus they can detach() if necessary.
This is a port of https://github.com/twbs/bootstrap/pull/14552 to v4.