我可以使用 php 或 jquery 模糊文本吗?

Can i blur the text using php or jquery

本文关键字:模糊 文本 jquery 可以使 php 我可以      更新时间:2023-09-26

我想模糊我网站的非付费用户的文本(如姓名、城市等),所以他们看不到我要限制的文本。

PHP或JQuery中是否有任何方法可以模糊文本,使用户即使从Web检查器或Web控制台也无法看到实际信息。

我已经检查了名为 Foggy 的 jquery 插件它的工作,但用户可以在 Web 检查器中看到文本。因此,如果在PHP中有任何方法可以模糊服务器端的文本,请建议我。

任何提示将不胜感激。提前谢谢。

不,至少不是(HTML)文本,因为您将始终能够看到HTML的来源。

唯一的可能性是使用服务器端的一些PHP图形库(GD,ImageMagick或类似)将文本渲染为图像。但就干净的网页设计而言,这将是非常糟糕的做法。
编辑:另外,您需要注意文本的图像需要与实际文本相同的空间,依此类推。

由于javascript是客户端,肯定有人可以弄清楚如何取消模糊。我相信存在许多库来满足您的需求,但是如果您真的想要隐藏服务器端的信息将是前进的方向。

同样,我相信您可以使用CSS实现此目的,但是仍然可以访问该信息。

您是否考虑过将结果从London更改为Lxxxxx甚至XXXXXX.您可以使用strlensubstr来实现此目的(如果您想显示第一个字母)。

另一种可能性是使用条件来查看是否应该显示它,然后显示第一个字母,然后显示模糊的通用图像。所以也许像这样:

echo '<span>'.substr($name,0,1).'<img src="blur.jpg"></span>';

更新

也许最好的方法是更改文本并模糊它,请参阅以下内容:

<style>
.blurit {
   color: transparent;
   text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
</style>
<?php
    $str = "United Kingdom";
    echo '<span class="blurit">' . strtoupper(substr($str,0,1)).preg_replace("/[a-z]/", "x",substr($str, 1)) . '</span>';
?>

你可以显示一个"假文本"并通过Ajax加载真实文本。

.HTML

<div id="box">
  That's the fake text
</div>

.CSS

#box{
  -webkit-filter: blur(5px);
}
.nofilter{
  -webkit-filter: blur(0px) !important;
}

jQuery

$('#btn-nofilter').on('click', function(){
  $box = $('#box');  
  $box.text('Thats'' the real text.'); //GET TEXT WITH A AJAX REQUEST
  $box.addClass('nofilter');
});

但无论如何:模糊效果是使用 CSS3 而不是 JavaScript 创建的。

小提琴

请尝试以下操作:

jQuery('.blurry-text').css('color','transparent').css('text-shadow','0 0 10px rgba(0,0,0,0.5)').text('XXXXX');