If I have a span tag like this:
<span>Hi<br />SecondLine</span>
And I call this jQuery function:
var html = $('span').html();
html is set to:
Hi<br>SecondLine
Now, I realize the name of the function is html() and not xhtml(). But is this expected behavior? Can I count on it, or do I alway need to check for a xhtml br tag and an html br tag, in say, this example:
function br2nl(text) {
return text.replace(/<br \/>/gi, '\n').replace(/<br>/gi, '\n');
}
It doesn't. It just modifies the browser DOM.
It is up to the browser to serialise the DOM to HTML or XHTML as it desires when using innerHTML. Different browsers act differently.
All browsers normalize HTML code while building their DOM tree. So, javascript gains access to already normalized DOM. With all tags properly closed and such.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With