【问题标题】:Hiding HTML code from users?对用户隐藏 HTML 代码?
【发布时间】:2011-05-11 08:48:47
【问题描述】:

我试图隐藏几个元素,以便最终用户在看到页面源时看不到它。似乎不可能,因为此代码将被浏览器下载和读取。因此,用户会找到一种阅读方式。

但是,我发现一些网站隐藏了部分来源!看看这个网站:http://namechk.com/。与站点列表相关的源代码不存在!该代码是 HTML 代码吗?还是其他可以隐藏的东西? 有谁知道这样做的方法吗?

谢谢

【问题讨论】:

  • 在 namechk.com/ 页面源可用....
  • 可以通过ajax隐藏内容,html不能隐藏
  • 一切从这里开始......

标签: html hide


【解决方案1】:

这是因为页面严重依赖 javascript。但是您也可以(并且您的浏览器也可以)下载 javascript。如果您深入研究它们,您会发现页面是如何生成的。

您可以混淆您的 javascript,但我认为这没什么意义。您是否认为您的 HTML 如此独特以至于有人会窃取它?

【讨论】:

    【解决方案2】:

    不可能从浏览器中隐藏 html 代码。即使在您发布的链接中,html 代码也在那里。它只是动态加载的。看看 Firebug 中的 DOM。

    【讨论】:

      【解决方案3】:

      该站点未显示详细信息,因为它使用 Asp.net、JavaScript 和 jQuery 来显示数据。

      您可以在这里查看:http://w3techs.com/sites/info/namechk.com

      无法对客户端隐藏 html。

      您可以做的一件事是使用 JavasSript 或 jQuery 删除不必要的元素。

      【讨论】:

        【解决方案4】:

        HTML 可以隐藏在 iFrame 中,从另一个页面中提取源代码(尽管他们可以从那里查看源代码)

        【讨论】:

        • 我讨厌人们在没有评论的情况下投反对票。查看父级的来源时,您无法看到 iframe 的来源。您所看到的只是一个带有属性的 iframe 标记。可以访问iframe的源码,单独查看。
        【解决方案5】:

        您可以通过 ajax 调用将想要隐藏的代码加载到 div 中。这个 div 的内容不会在浏览器源码中看到。

        <script>
        //ajax call via jQuery/Prototype loading content into div below
            $.ajax({
                url: "somepage.php",
                data: 'yourParameters'
                },
                success: function(data){
                    $('#loadhtmlinviaAjax').show(); //toggle display status of this div as required
                    $('#loadhtmlinviaAjax').html(data);
                }
            });
        </script>
        
        <div id="loadhtmlinviaAjax" style="display: none;"></div>
        

        【讨论】:

        • 您仍然可以通过例如萤火虫看到它。如果有人想偷它,她可能会足够聪明地弄清楚。
        • 错了,右键时看不到->查看源代码,但是Firebug显示通过ajax加载的html代码。
        猜你喜欢
        • 2019-07-28
        • 2013-01-31
        • 1970-01-01
        • 2013-10-29
        • 2011-05-29
        • 2012-09-07
        • 2021-04-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多