如何隐藏或删除浏览器视图页面源中的评论?
Posted
技术标签:
【中文标题】如何隐藏或删除浏览器视图页面源中的评论?【英文标题】:How to hide or remove comments in browser view page source? 【发布时间】:2014-02-24 00:42:14 【问题描述】:我正在开发一个网站。它包含很多 cmets。当用户在任何浏览器中单击 view page source
时,我想从 html 中隐藏或删除 cmets。
这可能吗?如果可能的话,有人能说一下实现它的方法吗?
【问题讨论】:
不!这是不可能的 你不能……删除 cmets? 您可以尝试使用类似 grunt 的方法对您的 html 进行后期处理以进行生产。如果你使用 NodeJs,你可以试试 grunt,它有一个叫做 htmlmin 的模块。 github.com/gruntjs/grunt-contrib-htmlmin。我确信对于不同的语言还有其他选择。如果你愿意,你甚至可以自己动手。 ***.com/questions/2364601/… 如果您使用像 php 这样的服务器端语言对您的网站进行编码,您可以在将文本发送到浏览器之前获取缓冲区中的文本,然后使用正则表达式或其他东西删除所有<!--
和-->
标签以及它们之间的所有内容。
【参考方案1】:
源视图显示源。您无法控制浏览器将如何呈现它。
如果您不希望 cmets 在浏览器用户查看源代码时显示,则不要将它们放在您的服务器提供给浏览器的源代码中。
【讨论】:
【参考方案2】:你不能那样做。但是在将 html 文件上传到服务器之前,您可以缩小源并上传它们。但在上传之前检查一切是否按预期工作。试试这个网站。
http://www.willpeavy.com/minifier/
【讨论】:
【参考方案3】:我认为唯一的解决方法是打开一个新的浏览器窗口并使用 javascript 在其中复制 html 内容 - 这将是已呈现的代码,因此您不会有任何 cmets。
但你不太可能需要这个。简单的方法是不要在服务器端输出您的 cmets。现在有很多选择(输出缓冲加缩小似乎是最合理的)。
【讨论】:
【参考方案4】:目前我决定使用php创建html和jquery cmets来将它们隐藏在查看源代码中
喜欢
<input type="submit" value="Submit">
<?php //this is comment regarding input ?>
可能会影响性能...但没有找到其他方法
关于 jquery 一个注释。
//$('#upper_level_id0').css('color', 'red');<?php //works ?>
$('#upper_level_id'+index).remove();
在此示例中,$('#upper_level_id'+index).remove();
不起作用。
$('#upper_level_id0').css('color', 'red');<?php //works ?>
//$('#upper_level_id0').css('color', 'red');
<?php //works ?>
$('#upper_level_id'+index).remove();
但在这个例子中一切正常。因此得出结论,<?php
评论更好地从新行开始
【讨论】:
我刚读了这篇文章,我在想,如果你在 Linux 或 Windows 服务器上,你总是可以使用 php 或 asp 来获取不可见的源视图 cmets,这就是我所做的。【参考方案5】:如果您有自己的网络服务器,您可以使用 Google 的名为 PageSpeed 的插件,该插件可用于 Apache 和 nginx,其中一项功能是从 html 和 css 代码中删除您的 cmets。
【讨论】:
【参考方案6】:Jsource 视图显示源。您无法控制浏览器将如何呈现它。
如果您不希望 cmets 在浏览器用户查看源代码时出现,则不要将它们放在源代码中
【讨论】:
【参考方案7】:从浏览器和页面源代码隐藏代码的最简单方法,使用 php cmets:
快速单行笔记:
<?php //Hide this ?>
对于代码块:
<?php /*
(html code to comment out here)
*/ ?>
使用 ?php 作为 cmets 的另一个优点是它们是...秘密的...您不会只为您的团队公开您想要的 cmets。 Seeeee-cret
【讨论】:
以上是关于如何隐藏或删除浏览器视图页面源中的评论?的主要内容,如果未能解决你的问题,请参考以下文章