我注意到jQuery(或者它是Firefox)会转变我的一些 <span class="presentational"></span> into <span class="presentational" />
现在我的问题是,写这样的标记是否可以?任何浏览器都会窒息吗?
就我个人而言,<span class="presentational" />如果它是空的,我觉得它看起来更干净.
例如,如果我们有
<html>
<head>
<title>FooBar</title>
</head>
<body></body>
</html>
Run Code Online (Sandbox Code Playgroud)
如果我们这样做document.getElementByTagName("title").TagName,那么我们将TITLE(大写).虽然html标准建议用小写编写html标签.
我知道两者之间没有关系,但这仍然没有意义.
DOM是否应该以大写形式返回标记名称?
如果我有这样的span标签:
<span>Hi<br />SecondLine</span>
Run Code Online (Sandbox Code Playgroud)
我称之为jQuery函数:
var html = $('span').html();
Run Code Online (Sandbox Code Playgroud)
html设置为:
Hi<br>SecondLine
Run Code Online (Sandbox Code Playgroud)
现在,我意识到函数的名称是html()而不是xhtml().但这是预期的行为吗?我可以指望它,或者我总是需要检查xhtml br标签和html br标签,例如,这个例子:
function br2nl(text) {
return text.replace(/<br \/>/gi, '\n').replace(/<br>/gi, '\n');
}
Run Code Online (Sandbox Code Playgroud) 可能重复:
Jquery html()和自闭标签
是否期望jQuery $('span').html()将XHTML br标签转换为html语法?
我有这样的文件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="/js/core/jquery.js" type="text/javascript"></script>
</head>
<body>
<div id="content">
<img src="/some/image.gif" />
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我想为一些节点检索html来做某事.但我看到IMG存在一个问题.
$('#content').html();
Run Code Online (Sandbox Code Playgroud)
这将返回无效的XHTML
<img src="/some/image.gif">
Run Code Online (Sandbox Code Playgroud)
jQuery版本是1.4.2.