Open Bug 968518 Opened 7 years ago Updated 3 years ago

Caret randomly jumps to beginning of line while typing in contenteditable element

Categories

(Core :: DOM: Editor, defect)

27 Branch
x86
macOS
defect
Not set
normal

Tracking

()

UNCONFIRMED

People

(Reporter: jmjacobs, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:27.0) Gecko/20100101 Firefox/27.0 (Beta/Release)
Build ID: 20140127194636

Steps to reproduce:

Visit this page:
http://www.apartmenttherapy.com/paint-color-portfolio-best-of-2012-181694

Make an element on the page editable by adding the contenteditable attribute in the DOM inspector (Edit As HTML). I suggest scrolling down to some non-linked body text.

Next, click anywhere on the element, select all the text, then start typing (replace the existing text).

Note: In my case, I was using a browser add-on that inserts a new contenteditable element. It’s simpler to reproduce the issue by altering the page than by installing an add-on.


Actual results:

The input caret jumps back to the beginning of the current line every second or so during typing, resulting in jumbled (out-of-order) typed text.


Expected results:

The input caret should always stay after the last character typed, as it does on other pages.

It’s as if a timer-based script is removing and then quickly restoring focus to the element without restoring the selection (caret position), but I don’t think the page has any such script. Whatever the cause is, the issue is unique to Firefox. It does not occur in Chrome, Safari, or Opera.

I searched for related issues and only found bug 670776, fixed a couple of years ago:
“Caret/Cursor jumps around while entering text in etherpad's rich text editor”
Is this a regression?
I’m not sure. If so, not a recent one. It also occurs in Firefox 25.
Thank for this post. I recieve some benifit knowlegde in here. My blog: http://congxepthanhlong.com/san-pham.html
I think Mozilla/5.0 should be improved about loading page. My blog: http://cbs.vn
You need to log in before you can comment on or make changes to this bug.