將插入符號移到可內容編輯實體的末尾
某些Web 小部件(例如Gmail 的註釋)需要能夠將遊標移動到contenteditable 元素的末尾。雖然有用於處理輸入的解決方案,但由於其獨特的性質,它們無法處理 contenteditable 元素。
為了應對這項挑戰,需要專門為 contenteditable 元素量身定制的解決方案。幸運的是,有一個全面的函數可以滿足這種需求:setEndOfContenteditable()。此函數明智地使用範圍和選擇來操作 contenteditable 元素的文字內容,確保與各種瀏覽器的兼容性。
實作:
setEndOfContenteditable() 函數操作跨各種瀏覽器版本:
利用 createTextRange() 方法建立覆蓋整個元素內容的不可見範圍。同樣,應用塌陷()方法將範圍的終點定位在元素的末端。最後,選擇範圍,使其成為新的可見選擇。
用法:
elem = document.getElementById('txt1'); // Element to move the caret to the end of setEndOfContenteditable(elem);
要使用setEndOfContenteditable() 函數,只需取得目標元素即可並應用它:
此技術有效地將插入符號移至可內容編輯元素的末尾,無論瀏覽器版本或元素內容長度為何。以上是如何將插入符號移到內容可編輯元素的末端?的詳細內容。更多資訊請關注PHP中文網其他相關文章!