MochiKit + Google Gadgets + IE6/7?

View: New views
4 Messages — Rating Filter:   Alert me  

MochiKit + Google Gadgets + IE6/7?

by MXH :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


I'm having trouble using MochiKit with a Gadget I'm writing for the
iGoogle interface.  Specifically, even the inclusion of the
MochiKit.js file (via a SCRIPT tag) seems to break otherwise-
functional Gadgets in IE6 or (more seriously) IE7.  (Other browsers
seem fine.)

Here's what I'm seeing:

1.) I create a Gadget that *doesn't* depend on MochiKit
2.) The Gadget works (i.e. it renders properly on load, which involves
JS building up the DOM)
3.) I add a SCRIPT tag to the Gadget to import MochiKit.js
4.) The Gadget breaks (i.e. it won't render properly on load 90% of
the time)

Some clarifications:

a.) The Gadget has an "html" Content Type (To clarify the
clarification:  "Content Type" refers to the parameter in Google's
Gadget XML spec, not the HTML Header.)

b.) This happens even if I include the "MochiKit={__export__:false};"
line at the top of MochKit.js, which should suppess symbol export.

c.) Again, the Gadget isn't making any use of MochiKit, it's just
trying to import the JavaScript.

d.) The failure is intermittent, but I've never seen it fail w/o the
MochiKit include, and it fails ~90% of the time with the include, so I
feel pretty sure the two are related.


My question:  "Is this a known problem?  Has anyone else had
experiences, good or bad, with IE6 or IE7 compatibility when using
MochiKit to develop Google Gadgets?"

Thanks for reading.  If you're interested, the XML for the Gadget I am
using for testing can be fetched here:

http://www.house-o-games.com/neknek/gadgets/neknek.xml

(The failure occurs in the "canvas" view".)

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to mochikit@...
To unsubscribe from this group, send email to mochikit+unsubscribe@...
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: MochiKit + Google Gadgets + IE6/7?

by Per Cederberg-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


In order to break this down a bit, could you try the page with just
the MochiKit.Base module? Use the download customizer to create a
minimized version with the modules you wish to try.

http://svn.mochikit.com/mochikit/trunk/packed/MochiKit/customize.html

We need to know more details about which module that breaks to analyze
this. It is not a known issue.

Cheers,

/Per

On Wed, Apr 29, 2009 at 1:32 AM, MXH <mheyeck@...> wrote:

>
> I'm having trouble using MochiKit with a Gadget I'm writing for the
> iGoogle interface.  Specifically, even the inclusion of the
> MochiKit.js file (via a SCRIPT tag) seems to break otherwise-
> functional Gadgets in IE6 or (more seriously) IE7.  (Other browsers
> seem fine.)
>
> Here's what I'm seeing:
>
> 1.) I create a Gadget that *doesn't* depend on MochiKit
> 2.) The Gadget works (i.e. it renders properly on load, which involves
> JS building up the DOM)
> 3.) I add a SCRIPT tag to the Gadget to import MochiKit.js
> 4.) The Gadget breaks (i.e. it won't render properly on load 90% of
> the time)
>
> Some clarifications:
>
> a.) The Gadget has an "html" Content Type (To clarify the
> clarification:  "Content Type" refers to the parameter in Google's
> Gadget XML spec, not the HTML Header.)
>
> b.) This happens even if I include the "MochiKit={__export__:false};"
> line at the top of MochKit.js, which should suppess symbol export.
>
> c.) Again, the Gadget isn't making any use of MochiKit, it's just
> trying to import the JavaScript.
>
> d.) The failure is intermittent, but I've never seen it fail w/o the
> MochiKit include, and it fails ~90% of the time with the include, so I
> feel pretty sure the two are related.
>
>
> My question:  "Is this a known problem?  Has anyone else had
> experiences, good or bad, with IE6 or IE7 compatibility when using
> MochiKit to develop Google Gadgets?"
>
> Thanks for reading.  If you're interested, the XML for the Gadget I am
> using for testing can be fetched here:
>
> http://www.house-o-games.com/neknek/gadgets/neknek.xml
>
> (The failure occurs in the "canvas" view".)
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to mochikit@...
To unsubscribe from this group, send email to mochikit+unsubscribe@...
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: MochiKit + Google Gadgets + IE6/7?

by MXH :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thank you for your response.

The problem occurs even if only the MochiKit.Base module is included when MochiKit.js is built, and even if globals are not exported.  If you delete everything below the opening comment block (w/ the Copyright notice) it works just fine, however.  (-:


Two additional points:

1.) The problem (with this gadget) seems to manifest mostly on page reloads; you can go to the Canvas view once, but if you reload the page it looks like something blows up in the JS interpreter.  I'm not sure if that behaviour is suggestive of anything.

2.) While testing this bug, I've found that Google's(?) caching is a royal PITA.  Even if you flag the Gadget as uncached in the Developer view, external JS files might still be cached.  (It seems inconsistent.)  I find it's necessary to rename the external JS file for every test run (e.g. MochiKit2.js, MochiKit3.js, MochiKit4.js, etc.) in order to get meaningful results.


-- Mike


On Tue, Apr 28, 2009 at 8:51 PM, Per Cederberg <cederberg@...> wrote:

In order to break this down a bit, could you try the page with just
the MochiKit.Base module? Use the download customizer to create a
minimized version with the modules you wish to try.

http://svn.mochikit.com/mochikit/trunk/packed/MochiKit/customize.html

We need to know more details about which module that breaks to analyze
this. It is not a known issue.

Cheers,

/Per

On Wed, Apr 29, 2009 at 1:32 AM, MXH <mheyeck@...> wrote:
>
> I'm having trouble using MochiKit with a Gadget I'm writing for the
> iGoogle interface.  Specifically, even the inclusion of the
> MochiKit.js file (via a SCRIPT tag) seems to break otherwise-
> functional Gadgets in IE6 or (more seriously) IE7.  (Other browsers
> seem fine.)
>
> Here's what I'm seeing:
>
> 1.) I create a Gadget that *doesn't* depend on MochiKit
> 2.) The Gadget works (i.e. it renders properly on load, which involves
> JS building up the DOM)
> 3.) I add a SCRIPT tag to the Gadget to import MochiKit.js
> 4.) The Gadget breaks (i.e. it won't render properly on load 90% of
> the time)
>
> Some clarifications:
>
> a.) The Gadget has an "html" Content Type (To clarify the
> clarification:  "Content Type" refers to the parameter in Google's
> Gadget XML spec, not the HTML Header.)
>
> b.) This happens even if I include the "MochiKit={__export__:false};"
> line at the top of MochKit.js, which should suppess symbol export.
>
> c.) Again, the Gadget isn't making any use of MochiKit, it's just
> trying to import the JavaScript.
>
> d.) The failure is intermittent, but I've never seen it fail w/o the
> MochiKit include, and it fails ~90% of the time with the include, so I
> feel pretty sure the two are related.
>
>
> My question:  "Is this a known problem?  Has anyone else had
> experiences, good or bad, with IE6 or IE7 compatibility when using
> MochiKit to develop Google Gadgets?"
>
> Thanks for reading.  If you're interested, the XML for the Gadget I am
> using for testing can be fetched here:
>
> http://www.house-o-games.com/neknek/gadgets/neknek.xml
>
> (The failure occurs in the "canvas" view".)
>
> >
>




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to mochikit@...
To unsubscribe from this group, send email to mochikit+unsubscribe@...
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: MochiKit + Google Gadgets + IE6/7?

by MXH :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I have some additional information on this problem.  First of all, the issue doesn't appear to be specific to MockiKit; I tried including the Dojo toolkit, and saw exactly the same behaviour.  Secondly, the problem seems to be an interaction between Google's back-end, IE, and my code.  In short:

I include two JS files in my gadget (my actual gadget, not the test case I mentioned in my earlier messages): MochiKit, and my application logic.  I use two SCRIPT tags, like so:
<SCRIPT type="text/javascript" src="http://www.house-o-games.com/neknek/gadgets/play/MochiKit.js"></SCRIPT>
<SCRIPT type="text/javascript" src="http://www.house-o-games.com/neknek/gadgets/play/play.js"></SCRIPT>
When I look at the rendered Gadget, however, Google has replaced these two tags with the following one:
<SCRIPT src="//1-sandbox.gmodules.com/gadgets/concat?refresh=86400&container=ig&rewriteMime=text/javascript&gadget=http%3A%2F%2Fwww.house-o-games.com%2Fneknek%2Fgadgets%2Fplay.xml&fp=-182800334&1=http%3A%2F%2Fwww.house-o-games.com%2Fneknek%2Fgadgets%2Fplay%2FMochiKit.js&2=http%3A%2F%2Fwww.house-o-games.com%2Fneknek%2Fgadgets%2Fplay%2Fplay.js" type="text/javascript"></SCRIPT>

Which, if you look at the URL, seems to be a composite of the two files cached on Google's servers somewhere.  This composite doesn't sit well with IE.

I worked around the problem by generating the SCRIPT tags dynamically:
<SCRIPT type="text/javascript">
var i, externs;
externs = [ 'http://www.house-o-games.com/neknek/gadgets/play/MochiKit.js',
'http://www.house-o-games.com/neknek/gadgets/play/play.js'];

for (i = 0; i < externs.length; i++)
document.write(unescape("%3Cscript src='" + externs[i] + "' type='text/javascript'%3E%3C/script%3E"));
</SCRIPT>
This code prevents the composition of the JS files, and keeps IE happy.

I talk about this issue at slightly greater length on my blog (http://www.mlsite.net/blog/?p=168).  Thanks for answering my e-mail, and looking at my problem.

MochiKit works just fine for Google Gadgets, you just have to be careful how you include it.

-- Mike

On Tue, Apr 28, 2009 at 8:51 PM, Per Cederberg <cederberg@...> wrote:

In order to break this down a bit, could you try the page with just
the MochiKit.Base module? Use the download customizer to create a
minimized version with the modules you wish to try.

http://svn.mochikit.com/mochikit/trunk/packed/MochiKit/customize.html

We need to know more details about which module that breaks to analyze
this. It is not a known issue.

Cheers,

/Per

On Wed, Apr 29, 2009 at 1:32 AM, MXH <mheyeck@...> wrote:
>
> I'm having trouble using MochiKit with a Gadget I'm writing for the
> iGoogle interface.  Specifically, even the inclusion of the
> MochiKit.js file (via a SCRIPT tag) seems to break otherwise-
> functional Gadgets in IE6 or (more seriously) IE7.  (Other browsers
> seem fine.)
>
> Here's what I'm seeing:
>
> 1.) I create a Gadget that *doesn't* depend on MochiKit
> 2.) The Gadget works (i.e. it renders properly on load, which involves
> JS building up the DOM)
> 3.) I add a SCRIPT tag to the Gadget to import MochiKit.js
> 4.) The Gadget breaks (i.e. it won't render properly on load 90% of
> the time)
>
> Some clarifications:
>
> a.) The Gadget has an "html" Content Type (To clarify the
> clarification:  "Content Type" refers to the parameter in Google's
> Gadget XML spec, not the HTML Header.)
>
> b.) This happens even if I include the "MochiKit={__export__:false};"
> line at the top of MochKit.js, which should suppess symbol export.
>
> c.) Again, the Gadget isn't making any use of MochiKit, it's just
> trying to import the JavaScript.
>
> d.) The failure is intermittent, but I've never seen it fail w/o the
> MochiKit include, and it fails ~90% of the time with the include, so I
> feel pretty sure the two are related.
>
>
> My question:  "Is this a known problem?  Has anyone else had
> experiences, good or bad, with IE6 or IE7 compatibility when using
> MochiKit to develop Google Gadgets?"
>
> Thanks for reading.  If you're interested, the XML for the Gadget I am
> using for testing can be fetched here:
>
> http://www.house-o-games.com/neknek/gadgets/neknek.xml
>
> (The failure occurs in the "canvas" view".)
>
> >
>




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to mochikit@...
To unsubscribe from this group, send email to mochikit+unsubscribe@...
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---