我刚刚发现了contenteditable
属性,我正在考虑它的实际用途。
我认为这将是可怕的快速更新到一个页面,但有一些问题,如:
- 安全性:你显然不希望任何人更新你的页面,所以允许编辑内容应该受到相当严格的控制
- 登录后使页面内容可编辑。这难道不需要改变整个页面的标记吗?这本身不是问题,但我想这是一项相当大的工作
- 保存新内容。从理论上讲,这可以通过ajax和json来完成,将新的页面标记保存在数据库的字段中,不是吗?还有,你实际上如何向网站确认“我已经完成了更改,你现在可以保存它了”
我喜欢这个快速编辑页面内容的想法,就在你将要看到它的地方。我对在我的网站上实现这样的事情感到非常兴奋,但在尝试之前我可以使用一些指导。
有人能解决上述列出的问题以及任何我没有考虑过的可能相关的问题吗?
谢谢你的时间!
2条答案
按热度按时间7xllpg7q1#
contenteditable
本身无关。人们现在可以使用浏览器的开发工具更改互联网上任何页面的内容,但除了伪造有趣的屏幕截图外,如果服务器不接受更新,这对他们来说没有多大用处。这里更重要的问题是通过确保用户添加到页面的内容是“安全的”(例如,这就是为什么博客通常不允许评论中的大多数HTML标签)来防止cross-site scripting攻击。contenteditable
属性即可。或者,当用户单击“编辑”按钮时,使用JavaScript添加它。我不希望它改变整个页面的标记,因为这种方法是明智的,页面已经在服务器端生成,无论如何,从一个模板被存储在数据库中的内容填充。如果您正在谈论使静态站点可编辑,那么,是的,您将有很多工作要做,但是无论您计划让人们编辑页面,您都有这些工作要做。nxagd54h2#
一个用例是字体网站推广。
我在www.example.com上发现了这个属性https://www.luciole-vision.com/luciole-en.html#try,在那里你可以改变文本,并看到你的文本使用这种字体。