在<text区域>使用JavaScript
Shuffle selected text on <textarea> using JavaScript
当我用鼠标在<textarea>
上选择一些文本时,如何通过单击按钮来对其进行混洗/加扰?
我在SO上搜索了一些类似于我想要的东西,我看到一些人使用substring
、selectionStart
和selectionEnd
。
我想要的是:当我用鼠标选择一些文本时,当我点击一个按钮时,它会被打乱/打乱,而<textarea>
上未被选择的其余文本应该保持原样。
我只想对选定的文本执行操作。
它更类似于富文本编辑器,比如当您选择一些文本,然后单击bold按钮时,所选文本将变为bold=。
p.S。它应该按单个字符进行混洗
编辑:明白了!我只需要分离选择字符串。我的代码现在可以工作了。这很有帮助-https://stackoverflow.com/a/9605191/1101391
不幸的是,IE 9及以下版本不支持<input>
和<textarea>
上的selectionStart
和selectionEnd
属性。以下是对我有效的解决方案-https://stackoverflow.com/a/9276457/1101391
您可以访问全文,并知道选择开始和结束的子字符串。试试这样的东西:
var txtArea = document.getElementById("foo");
var before = txtArea.value.substr(0, txtArea.selectionStart);
var selection = txtArea.value.substr(txtArea.selectionStart, txtArea.selectionEnd + 1);
var after = txtArea.value.substr(txtArea.selectionEnd, txtArea.value.length);
txtArea.value = before + scrambleThisString(selection) + after;
假设您使用ID content
:命名文本区域
var textarea = document.getElementById('content');
var content = textarea.value;
var start = textarea.selectionStart;
var end = textarea.selectionEnd;
var before = content.slice(0, start);
var after = content.slice(end);
var selected = content.substring(start, end);
selected = shuffleStringByMagic(selected);
textarea.value = before + selected + after;
相关文章:
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 使用javascript将动态表从一个html页面打印到另一个html页
- 如何使用javascript或html下载PDF格式的填写表单
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 如何使用javascript从主svg对象动态创建svg视图框
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 使用Javascript获取所选选项ID
- 如果文本字段为空,则使用JavaScript应用CSS样式
- 使用javascript从数据库中添加表
- JSON.parse没有'不能使用Javascript
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 可以't使用JavaScript获取width属性
- 如何使用javascript获取嵌套对象中所有子对象的单个属性
- 使用javascript在Flash中加载外部图像
- 使用Javascript创建测验页面
- 在PHP中使用javascript更改页面标题'if'
- 使用javascript函数在页面初始化后加载jquery
- 无法使用javascript检索SPList项
- 使用javascript存储变量的最安全方式
- 使用javascript搜索具有用户输入的数组