以前にこの質問に回答しましたが、回答が正しい理由がよくわかりません。答えの要点:
<p id="jqrender"></p> $(function() { $('#jqrender').html("<a href=http://www.website.com/>foo bar</a>"); });
OSX 上の最新の Chrome では、jQuery はこれを<a href="website.com"></a>foo bar
. 最も近いマークアップ修正は<a href="website" />
. ただし、ネイティブでは、Chrome 自体がマークアップを<a href="website.com/">foo bar</a>
.
どうしてこれなの?jQuery のどの部分がこのマークアップの修正を行っているのか、それが従う一般的な規則は何か、jQuery が他の壊れたマークアップにどのように反応するかをどのように推測できますか?