我试过了:
<script> $(function() { $('.class').before('<!--'); $('.class').after('-->'); }); </script>
但它不适用于我不知道的原因.
任何人都可以帮助我理解为什么它不起作用,我会怎么做?谢谢,非常感谢.
解决方法
看起来你正试图让.class的对象消失.请改用.hide().注释仅在浏览器首次加载页面时进行解析,因此添加注释不会对某些内容进行注释.
您需要了解HTML和DOM之间的区别. HTML是页面的文本表示,但浏览器在页面加载时将其解析为DOM. JavaScript适用于DOM,而不适用于HTML.在DOM元素上使用.innerHtml()可以重新分析HTML.
Here’s an example使用innerHtml()来隐藏使用HTML注释的元素(但请注意,我永远不会这样做 – 我只是展示了如何做你在你的问题中尝试做的事情):
HTML:
<h1>hello</h1> <div> <p>wow</p> <p>dude</p> </div>
JavaScript(jQuery):
$(document).ready(function () { setTimeout(hideIt,1000); }); function hideIt() { $('div').html('<!--' + $('div').html() + '-->'); }