focus光标未尾 或者开始

本文介绍了如何在HTML中通过JavaScript实现光标在文本框内的精准定位,包括光标置于文字末尾及文本框开始位置的操作,并详细解释了HTML5的占位符属性在提升用户体验上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

focus捕获到焦点时,光标会出现在对应的文本框当中,在文本框中有值时,因不同需要我们会有两种情况需求:

1.光标出现在文字末尾

 

除了IE 浏览器不兼容之外,其他浏览器都可以支持。解决IE浏览器的兼容

   var tar=document.getElementByIdx_x("name");

   if(tar.attachEvent){

  tar.attachEvent('onmouseover',focus(tar),false);

  }else{

 tar.addEventListener('mouseover',focus(tar),false);

 }

function focus(tar){

    tar.focus();
    tar.value=tar.value;

}

 

先捕获焦点,把文框的值重新赋一下就OK 了。

2.光标出现在文本框的开始位置,输入文字时 默认的文字会消失。被新值而取代

在HTML5中会有属于placeholder

《一》

<input id="text2" placeholder="sssdfsfs" />

 

《二》

 

这里使用的是一个jquery插件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link rel="stylesheet" type="text/css" href="../csss/basic.css" />
<script language="javascript" type="text/javascript" src="../csss/jquery.js"></script>
<script language="javascript" type="text/javascript" src="../csss/jquery.infieldlabel.js"></script>
<style type="text/css">

.cr_mid {
    margin-top: 16px;
    width: 310px;
}

.cr_mid ul li {
    height: auto;
    position: relative;
    width: 310px;
}


.ep_con {
    background:url(../img/uc_input.png) no-repeat scroll 0 0 transparent;
    font-family: 'MuseoSans_500-webfont';
    height: 42px;
    position: relative;
    width: 312px;
}
label.deflut {
    -moz-user-select: none;
    color: #7794AA;
    display: inline-block;
    font-family: 'MuseoSans_500-webfont';
    font-size: 13px;
    left: 15px;
    position: absolute;
    top: 15px;
    transition: all 0.16s ease-in-out 0s;
    z-index: 2;
}

.input_ok {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    color: #7794AA;
    font-family: 'MuseoSans_500-webfont';
    height: 20px;
    line-height: 20px;
    margin: 11px 12px;
    width: 280px;
}
</style>
</head>

<body>
<div class="cr_mid">
                <ul>                  
                    <li class="username_li">
                        <div class="email ep_con">
                        <label class="deflut inline-label" for="j_username" >Email address</label>
                        <input type="text" maxlength="200" tabindex="1" class="input_ok" name="j_username" id="j_username" autocomplete="off">
                        </div>
                    </li>
                    <li style="display:none;"></li>
                    <li class="ep_con password">
                  <div class="list_text_default">
                    <label class="watermark deflut inline-label" for="j_password" >Password</label>
                      <input type="password" tabindex="2" class="input_ok" name="j_password" id="j_password" style="" maxlength="200" autocomplete="off">
                  </div>               
          </li><li style="display: none;"><span for="j_password" generated="true" class="uc_red" style="display: none;">This field is required.</span></li>
                </ul>
                     <input type="submit" class="signin reg_com" value="Sign In">
                <div class="clear"></div>
                <h4 class="c_forget"><a href="/user/findPasswd.do">Forgot your password?</a></h4>
            </div>
           
            <script language="javascript" type="text/javascript">
                    
                     $(".inline-label").inFieldLabels();
            </script>
</body>
</html>

 

使用vue3 +step + ts = lang写一个页面,所有代码都在同一个文件;页面有一个叫编辑公式按钮;点击后,弹出一个页面,这个页面分左右两块A、B块;A块在左,B块在右;A块是二级树,带搜索功能;B块分上下三块B1/B2/B3块,B1占B块的60%,B2块占B块的30%,B3块占B块的10%;B1是多功能输入框,输入框支持上下滚动;输入来源分三块,第一块是左侧树,第二块是入由下方多功能按钮区带入,第三块是键盘输入,键盘输入只能数字和英文字符,自动带入的除外;B2是多功能按钮区,分别是+、-、*、/、if、else if、;、return、>、<、=、{、}、(、)等点击按钮,按钮之间间隔5px,点击B2的按钮,自动带入到B1输入框内;其中点击换行时,B1输入框自动换行,且添加分割线,分割线上下间距1;B1输入框删除时,A块、B2 带入的只能整体删除,不能单个字符删除;B3块有三个按钮靠右排列,分别是公式校验、确认、取消;A块树点击后,自动带入树的值到B1输入框内,展示时显示树的名称,返回的是树的id;B1用户输入只能数字和英文字符,自动带入的除外;B1输入框中的内容起始位正输入框的左上角,距边框5px;B1展示内容样式为随机颜色按钮,点击后,展示左插入、右插入、替换、删除操作,其中删除以右上角角标形式展示;点击B3块确认按钮时,以B1的内容以字符串且保留换行符的形式返回,回显时,需要根据所提供的字符串识别分块;
最新发布
06-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值