#8819 closed Bug (invalid)
InsertHtml in chrome not working to replace first or last words within a paragraph
Reported by: | Dave | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | General | Version: | |
Keywords: | Cc: |
Description
I've spent a few hours stepping through ckeditor trying to figure out what's going on here but have now run out of time.
I'm trying to replace the selected text with the selected text wrapped in a span and it works fine in firefox but under chrome it won't work for the first or last word within a span.
Have tried with the nightlies with no better results.
Attachments (1)
Change History (4)
Changed 13 years ago by
Attachment: | ipad_tooltips.tar.gz added |
---|
comment:1 Changed 13 years ago by
Here are the contents of the ckeditor which will demonstrate the problem. If you try to add a tooltip to a word within the last paragraph it works except if it's the first or last word selected.
<p> lauhfgAER Q;ERG Edit</p> <p> </p> <p> <img alt="" src="/assets/images/music_lloyd.jpg" style="width: 267px; height: 400px;" /></p> <p> addition of new content with tertiary menu</p>
comment:2 Changed 13 years ago by
Keywords: | chrome inserthtml removed |
---|---|
Resolution: | → invalid |
Status: | new → closed |
First you remove the test and then you try to wrap it into span.
Don't you think this is not the way it should be done? :)
Instead of
var edited_text = '<span class="ipad_tooltip" title="'+dialog_string+'">'+selected_text+'</title>'; editor.insertHtml(edited_text);
please use
var attributes = {}; attributes.title = 'ipad_tooltip'; attributes.class = 'ipad_tooltip'; var style = new CKEDITOR.style( { element : 'span', attributes : attributes } ); style.type = CKEDITOR.STYLE_INLINE; // need to override... dunno why. style.apply( editor.document );
This is the correct way to wrap tags around selection.
comment:3 Changed 13 years ago by
Thank you, That worked, though I don't see what was wrong with the original way. Given it worked in firefox it seems like a bug that it wouldn't work in Chrome.
In any case, the following lines caused an error (InternalError: missing name after . operator) with ckpackager.jar.
attributes.title = 'ipad_tooltip'; // ('ipad_tooltip' isn't quite right) attributes.class = 'ipad_tooltip';
They worked fine when I changed them to:
attributes['title'] = dialog_string; attributes['class'] = 'ipad_tooltip';
I haven't been able to change the status on this bug, but given it's relevant I didn't want to create a new bug report.
plugin demonstration of problem