Javascript Ondrag ROT-13/ROT-47解码

Javascript Ondrag ROT-13/ROT-47解码,javascript,html,css,text,transform,Javascript,Html,Css,Text,Transform,我有一个小网站,我想混淆一些文字,以保护不及时阅读的用户 与imdb上的关键字非常相似,您必须滚动才能显示它们 我认为如果文本有标记,那么这将是一种很好的交互方式来显示文本 例如: 程序员如何表达 h是爱吗?Zl srryvatf sbe lbh ner uneqpbqrq 现在,您可以拖动标记模糊的文本,就像准备将其复制到剪贴板一样,它应该会显示出来 有办法做到这一点吗?我目前的问题是如何确定javascript中的当前选择。应该可以满足您的需要。我可以想出一种仅使用CSS的棘手方法: 使用与

我有一个小网站,我想混淆一些文字,以保护不及时阅读的用户

与imdb上的关键字非常相似,您必须滚动才能显示它们

我认为如果文本有标记,那么这将是一种很好的交互方式来显示文本

例如:

程序员如何表达 h是爱吗?Zl srryvatf sbe lbh ner uneqpbqrq

现在,您可以拖动标记模糊的文本,就像准备将其复制到剪贴板一样,它应该会显示出来


有办法做到这一点吗?我目前的问题是如何确定javascript中的当前选择。

应该可以满足您的需要。

我可以想出一种仅使用CSS的棘手方法:

使用与背景颜色相同的颜色文本!然后,当用户高亮显示时,将显示文本。你需要概述或提请注意他们需要突出显示的部分,以使其明显

另一种方式:

将rot13填充到只读文本输入中,并附加一个带有解码它的AJAX调用的
select
事件。将只适用于较小的扰流板文本位,适合输入。您可以尝试使用textarea,但它不接受readonly属性(可能没关系)

有许多其他方法可以做到这一点(例如隐藏/显示div),但我认为这些是最接近/最简单的方法,符合您选择文本触发扰流板的要求

编辑:使用背景色解决方案,您不需要对文本进行编码,只需将其设置为“不可见”,直到高亮显示为止。这实际上是一个相当俗气的解决方案,还有很多其他更好的解决方案,但好的方面是它只是css。老实说,我认为强制一个完整的突出显示对你的用户来说是一件痛苦的事情,只需将rot13值存储在一个地方,将真实值存储在另一个地方(可能是隐藏的范围),然后使用js在点击或其他什么的时候将它们交换出去。不需要实际单独处理解码。您可以单独使用CSS和一些智能的
:hover
:focus
选择器来实现这一点


EDIT2:出于某种原因,我没有想到你可以单独用javascript进行rot13解码,我来自php世界,所以现在我觉得自己很愚蠢。很抱歉,我没有更好地回答您的问题,但希望其中一些内容有用。德国劳埃德船级社

我喜欢颜色/背景的想法。但是我如何显示原始的编码文本呢我想模拟一些类似于老学校的usenet体验,并结合当今的应用标准usability@Joe霍普加特纳:我听到你在说什么,但我不知道;当你可以把解码后的值隐藏在你的html中时,我不认为有必要进行动态解码。我更新了我的答案。