我在验证此类代码时遇到问题
function show_help_tip(event, element) {
var $e = $(element);
var pos = $e.offset();
$('.body-balloon',$help_tip_div).html($(' <p> </p> ').html(element.getAttribute('title')));
$help_tip_div.css({position:'absolute',top:530,left:pos.left+$e.width()-20}).show();
}
元素“P”的结束标记未打开
怎么了?
答案 0 :(得分:6)
您需要转义/
以停止它终止脚本元素。
"<\/p>"
验证者应该(通过几个步骤)链接到http://www.htmlhelp.com/tools/validator/problems.html#script
这是SGML的一个奇怪之处,其中定义为包含CDATA的元素(例如脚本元素)将被任何结束标记终止,但如果该结束标记与开始标记不匹配,则它无效
在JavaScript字符串中,"/"
和"\/"
是等效的,但在HTML </p>
和<\/p>
中不是,所以这可以避免出现某些内容(至HTML解析器)是脚本中的结束标记。
答案 1 :(得分:-1)
<p>
不需要结束标记。您可以使用<p>
,如果您是强迫症或使用XHTML,我认为您可以使用<p/>
,但该标记没有任何内容,因此没有结束标记。