On 1/17/2011 3:17 PM, Alex wrote:
> On 1/17/2011 2:02 PM, Roan Kattouw wrote:
>> 2011/1/16 Alex <[email protected]>:
>>> I tried to integrate it as neatly as possible, though the lack of
>>> documentation hasn't helped. Everything works fine, except when using
>>> IE. In IE, it just inserts the ref in some random location on the page,
>>> sometimes *near* where the cursor/highlight is, but sometimes its not
>>> even close. It seems to work differently with different compatibility
>>> mode settings, but even that isn't consistent. I've looked at some of
>>> the WikiEditor code and can't figure out why it isn't working, when the
>>> other dialogs in the standard toolbar work just fine.
>>>
>> Yeah IE has some nasty issues with selections.
>>
>> Have you tried calling .dialog( 'close' ) before doAction() instead of
>> after? That's the only difference I can find between your code and the
>> built-in dialogs.
>>
>
> No, that still didn't fix it. From some further testing, it looks like
> the regular dialogs are also broken in the current IE9 beta when using
> IE9 standards document mode.
>
> However, I found my dialogs do work in IE (except in IE9 standards mode)
> if some text is actually selected. It seems to forget the cursor
> position if nothing is selected and just places it randomly.
>
Based on this discovery, I tested a complete shot in the dark, and
managed to fix it (or at least work around it). Before inserting the
actual content, I have it insert a single space. Why it works I'm not
entirely sure, but it does. The code is now:
buttons: {
'cite-form-submit': function() {
$j.wikiEditor.modules.toolbar.fn.doAction( $j(this).data(
'context' ), {
type: 'encapsulate',
options: {
peri: ' '
}
}, $j(this) );
var ref = CiteTB.getRef(false, true);
$j(this).dialog( 'close' );
$j.wikiEditor.modules.toolbar.fn.doAction( $j(this).data(
'context' ), {
type: 'encapsulate',
options: {
pre: ref
}
}, $j(this) );
},
I've filed a bug for the IE9 standards mode issue that affects all the
dialogs (not just mine).
https://bugzilla.wikimedia.org/show_bug.cgi?id=26785
--
Alex (wikipedia:en:User:Mr.Z-man)
_______________________________________________
Wikitech-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l