Fixes for editing existing tagged textarea

__Context:__ We use this fabulous plugin to provide tags to a textarea that is hidden behind a label. When you double click the label, the text area gets initialized by the mentionsInput plugin with any existing tags present.

Here are a few small fixes that help with constantly reinitializing the area. At least they helped in our project.
* Recalculate the approxIndex of a mention. This helps with reinitialized textarea that contain tags. We found that adding a new tag in this situation clears the old ones.
* Handle cases where elements were undefined (therefore breaking the rest of the flow)
* Add 'onCaret' class to drop down for styling purposes.