將光標(biāo)定位于輸入框最右側(cè)實(shí)現(xiàn)代碼
前端開發(fā)過程中,經(jīng)常需要這樣的場景。用JS實(shí)現(xiàn)將光標(biāo)定位于輸入框最右側(cè)。
場景一:編輯圖片的描述文字
場景二:Script.aculo.us的Ajax.InPlaceEditor類。雙擊可編輯,編輯后離開可自動(dòng)更新該區(qū)域。
以上場景都需要JS實(shí)現(xiàn)將光標(biāo)定位于輸入框最右側(cè),卻不是通過鼠標(biāo)點(diǎn)入輸入框內(nèi)。
我們知道實(shí)現(xiàn)最基本的方法是HTMLElement的focus方法。如下
<p>
<input type="text" value="hello"/>
</p>
<script>
var input = document.getElementsByTagName('input')[0];
input.focus();
</script>
打開該頁面會(huì)發(fā)現(xiàn),光標(biāo)位于輸入框的最左側(cè)。效果如下
而現(xiàn)在要實(shí)現(xiàn)的是將光標(biāo)定位于輸入框最右側(cè),需要三個(gè)步驟。
1,調(diào)用focus方法
2,value賦值為空
3,之前的input的值再賦給自己
<p>
<input type="text" value="hello"/>
</p>
<script>
var input = document.getElementsByTagName('input')[0];
var val = input.value;
input.focus();
input.value = '';
input.value = val;
</script>
運(yùn)行后效果如圖,光標(biāo)在深入框最右側(cè)
相關(guān)文章
Javascript基礎(chǔ)教程之?dāng)?shù)組 array
Array是JavaScript中常用的類型,并且JavaScript中的數(shù)組和其他語言的數(shù)組有比較大的區(qū)別。JavaScript中數(shù)組中存放的數(shù)據(jù)類型不一定相同,而且數(shù)組的長度也是可改變的。2015-01-01深入理解JavaScript系列(19):求值策略(Evaluation strategy)詳解
這篇文章主要介紹了深入理解JavaScript系列(19):求值策略(Evaluation strategy)詳解,本文講解了一般理論、按值傳遞、按引用傳遞、按共享傳遞(Call by sharing)、按共享傳遞是按值傳遞的特例等內(nèi)容,需要的朋友可以參考下2015-03-03在firefox和Chrome下關(guān)閉瀏覽器窗口無效的解決方法
首先IE是可以通過window.close()來關(guān)閉瀏覽器窗口的,但是在firefox和Chrome下是無效的,但是可以通過一些特殊的手段進(jìn)行關(guān)閉2014-01-01Javascript入門學(xué)習(xí)第五篇 js函數(shù)
上篇文章講了js中對(duì)象和數(shù)組的一些方法。 這章我們先說說函數(shù),然后來點(diǎn)實(shí)戰(zhàn)。2008-07-07javascript、php關(guān)鍵字搜索函數(shù)的使用方法
這篇文章主要介紹了javascript、php關(guān)鍵字搜索函數(shù)的使用方法的相關(guān)資料,需要的朋友可以參考下2018-05-05用JS實(shí)現(xiàn)一個(gè)TreeMenu效果分享
用JS實(shí)現(xiàn)一個(gè)TreeMenu效果分享,思路比較簡單,但很實(shí)用2011-08-08