如何动态地在文本区域中应用嵌套的基本语言
How to dynamically apply nested base languages in textarea?
我正在寻找将rtl和ltr语言放在一起的最优雅的解决方案:例如阿拉伯语和html在一起。
标准不允许使用css:
direction: rtl;
unicode-bidi: embed;
这对我不管怎样都不起作用,因为html有嵌套文本问题。阿拉伯语是向右对齐的,但html是坏的。
是否有一种方法可以动态地做到这一点?标准想要添加一个嵌套的span标签,但由于用户是动态输入的,如果不检测每个字符的结束,我不知道这是怎么可能的。
由于textarea
的内容是纯文本,因此您不能在其中使用任何span
标记或任何其他标记,并且您不能将其任何部分的样式设置为与其他部分不同(使用伪元素的第一行或第一个字符除外)。
然而,在纯文本级别,可以使用控制字符强制双向嵌入。假设您在元素上整体设置了direction: rtl
(期望用户以从右到左的语言输入数据),用户可以输入U+202A从左到右嵌入以输入从左到右的文本,如英语或HTML标记,然后通过输入U+202C POP定向格式结束此操作,返回到从右到左模式。
由于大多数人不知道如何方便地键入这些字符,如果有的话,你可以在页面上为它们设置按钮:
<textarea id=msg name=msg rows=10 cols=40>
</textarea>
<br>
<button type=button onclick="append(''u202A')">→</button>
<button type=button onclick="append(''u202C')">←</button>
<script>
var msg = document.getElementById('msg');
function append(ch) {
msg.innerHTML += ch;
msg.focus();
}
</script>
相关文章:
- Ionic和angularjs嵌套步骤应用程序
- CSS未应用于嵌套的HTML表
- 为什么我的UI应用程序嵌套在引导模式中时无法工作
- 角度嵌套对象-TypeError:无法读取属性'应用程序'的未定义
- 如何在嵌套的ngRepeat中对第二个ngRepeat应用过滤器
- 对嵌套表单中的新字段重新应用 jquery - Rails 3
- 嵌套的Aurelia应用程序
- 如何在 Ember 应用中实现嵌套全局筛选器
- 是否可以在不使用浏览器插件的情况下在标准 Web 应用程序中获取嵌套文件夹信息
- 如何使用附加到html标签的嵌套ng应用程序将一个基于angularjs的SPA包含到另一个基于angularjs
- 在Backbone/Require应用程序中使用Router和inniew渲染嵌套视图
- 嵌套路由's模板未在EmberJS应用程序中呈现
- 我应该使用嵌套集合来组织我的backbone.js应用程序吗
- 在Angularjs应用程序中,使用嵌套对象属性过滤ng repeat不起作用
- 引导程序可折叠嵌套导航jquery应用于多个目标
- 在angularJS中控制器内嵌套应用
- 用postgres在express应用中嵌套数据
- 在Angular2中对嵌套组件应用css规则
- node.js/express应用程序-使用哪个异步方法来替换我对HGET的嵌套调用
- 定义本地web应用程序和CDN之间的嵌套依赖关系