是否有一个javascript/jquery选择器用于鼠标光标选择的文本
is there a javascript/jquery selector for text selected by mouse cursor?
是否有一个jquery选择器的文本,被鼠标光标拖动后突出显示?例如,我想选择我输入到我的textarea
字段的文本,单击一个按钮,它将<p>
标记放在我用鼠标光标突出显示的文本周围。非插件解决方案是首选,谢谢。
有一个直接的javascript解决方案,这是相当不错的…只使用inputElement.selectionStart
和inputElement.selectionEnd
。
这是有帮助的注意,这只是Dom元素,所以你必须采取你的jQuery选择器为你的textarea和添加[0]来获得元素本身,即。$("#myTextArea")[0].selectionStart
.
从那里你可以做一些字符串工作,并在适当的索引添加你的<p>
标签。
我还没有测试过这个,但它应该工作…
var selStart = $("#myTextArea")[0].selectionStart;
var selEnd = $("#myTextArea")[0].selectionEnd;
var originalString = $("#myTextArea").val();
var segment_1 = originalString.substr(0,selStart);
var segment_2 = originalString.substr(selStart,selEnd);
var segment_3 = originalString.substr(selEnd,originalString.length);
var finalString = segment_1 + "<p>" + segment_2 + "</p>" + segment_3;
$("#myTextArea").val(finalString);
为什么不用php呢?PHP + jQuery将帮助你。
示例表单:
<form action="highlight.php" method="post">
My textarea:<br />
<textarea cols="10" rows="10" name="textarea"></textarea>
<input type="submit" value="Wrap <p> around" />
</form>
PHP处理表单并将
包裹起来:
<?php
$text = $_POST[''];
$wrap = '<p>'.$text.'</p>';
echo '<textarea cols="10" rows="10">'.$wrap.'</p>';
?>
你可以删除echo $wrap,但我更喜欢你学习jQuery和如何使用它来执行php脚本。
我没有那么多的jQuery经验来告诉你如何,但学习它或谷歌"如何使用jQuery执行php脚本",我相信你会找到一些东西=)
相关文章:
- 鼠标光标-用于wordpress网站
- 即使光标位于屏幕边缘,也可以跟踪鼠标速度
- JQuery BlockUI鼠标加载光标没有't在Google Chrome中返回默认值
- 如何在按住鼠标按钮且光标在视口外时检测鼠标离开
- 我可以通过javascript在鼠标光标旁边动态添加文本吗?
- 鼠标光标改变Javascript链接的DIV
- 当我单击画布并拖动鼠标时,光标将变为文本选择光标.我该如何防止这种情况发生
- 当鼠标光标纬度等于标记纬度时,发出警报(Google Maps API v3)
- 使用jQuery/CSS设置的鼠标光标在鼠标移动之前不会更改
- 我可以在HTML5画布中创建图形形状对象吗?以及当用户将鼠标悬停在形状上时如何将光标显示为指针
- 检查鼠标光标是否在带坐标的数组范围内
- 如何在鼠标光标周围创建形状
- jQuery:使用插件Tipsy将工具提示附加到鼠标光标位置
- d3.js-当鼠标悬停在SVG容器上的这些元素上时,我如何设置光标
- PixiJS-如何更改鼠标悬停时的光标
- CSS3缩放鼠标光标
- 谷歌可视化时间线显示鼠标光标的时间
- 鼠标悬停时,光标将更改为按钮形式
- 当鼠标空闲时强制 Chrome 光标更新原版 JavaScript
- 侧边栏隐藏/显示按钮,跟随光标鼠标