php 游标 上移,jQuery点击input使光标移动到最后或指定位置

你要知道面对一个 处女座的 需求者, focus()是远远不够的。 比如说“我点进去的时候光标要在最后,这样我就不用再把光标移动到最后去添加东西了。” oh,让我先撞下墙。 我们需要扩展jQuery: //光标放在最后 $("#文本框ID").textFocus();光标放在第二个字符

你要知道面对一个 处女座的 需求者, focus()是远远不够的。

比如说“我点进去的时候光标要在最后,这样我就不用再把光标移动到最后去添加东西了。”

oh,让我先撞下墙。

我们需要扩展jQuery:

//光标放在最后 $("#文本框ID").textFocus();光标放在第二个字符后面 $("#文本框ID").textFocus(2);

(function($){

$.fn.textFocus=function(v){

var range,len,v=v===undefined?0:parseInt(v);

this.each(function(){

if($.browser.msie){

range=this.createTextRange();

v===0?range.collapse(false):range.move("character",v);

range.select();

}else{

len=this.value.length;

v===0?this.setSelectionRange(len,len):this.setSelectionRange(v,v);

}

this.focus();

});

return this;

}

})(jQuery);

另一种简单的方法:

var t=$(“#”+id).val();

$(“#”+id).val(“”).focus().val(t);

建议采用第一种方法。

如果你正在使用 QwtPlot 库,可以通过以下步骤实现游标移动: 1. 创建一个 QwtPlotMarker 对象来表示游标。 2. 将游标添加到 QwtPlot 中。使用 QwtPlot::insertMarker() 或 QwtPlot::addMarker() 方法来添加游标。 3. 捕获鼠标移动事件,并在事件处理程序中更新游标位置。 以下是示例代码: ```cpp // 创建游标对象 QwtPlotMarker *cursor = new QwtPlotMarker(); cursor->setLineStyle(QwtPlotMarker::VLine); cursor->setLinePen(Qt::black); cursor->setXValue(0.0); // 初始位置 // 将游标添加到 QwtPlot cursor->attach(qwtPlot); // 捕获鼠标移动事件 qwtPlot->canvas()->installEventFilter(this); // 处理鼠标移动事件 bool MyWidget::eventFilter(QObject *obj, QEvent *event) { if (event->type() == QEvent::MouseMove && obj == qwtPlot->canvas()) { QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event); // 将鼠标位置转换为坐标系值 double x = qwtPlot->invTransform(QwtPlot::xBottom, mouseEvent->pos().x()); double y = qwtPlot->invTransform(QwtPlot::yLeft, mouseEvent->pos().y()); // 更新游标位置 cursor->setXValue(x); cursor->setYValue(y); // 重新绘制 QwtPlot qwtPlot->replot(); } return false; } ``` 这段代码创建了一个垂直线样式的游标对象,并将其添加到 QwtPlot 中。然后,它捕获 QwtPlot 的鼠标移动事件,并在事件处理程序中更新游标位置。请注意,这里使用了 QwtPlot::invTransform() 方法将鼠标位置转换为坐标系值。最后,调用 QwtPlot::replot() 方法重新绘制 QwtPlot。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值