Hi Guys I''m trying to use Effect.Scale to adjust the width of an element (I have an absolutely positioned panel I want to slide out on mouse-over). I''m finding setSyle crashes in IE[7] on the highlighted line. setStyle: function(element, styles) { element = $(element); var elementStyle = element.style, match; if (Object.isString(styles)) { element.style.cssText += '';'' + styles; return styles.include(''opacity'') ? element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : element; } for (var property in styles) if (property == ''opacity'') element.setOpacity(styles[property]); else elementStyle[(property == ''float'' || property == ''cssFloat'') ? (elementStyle.styleFloat === undefined ? ''cssFloat'' : ''styleFloat'') : property] = styles[property]; return element; }, My code is below: $(''notepanel'').observe(''mouseover'',function(e){ if(!this.timer) { this.timer = window.setTimeout(function(){ this.timer = undefined; this.hide(); new Effect.Appear(this, { duration:.5 }); new Effect.Scale(this, { scaleX:true, scaleY:false, scaleContent:false, scaleMode: { originalHeight:500, originalWidth:500 }}); this.addClassName("open"); }.bind(this),500); } }).observe(''mouseout'',function(e) { if(this.timer) { window.clearTimeout(this.timer); this.timer = undefined; } if(this.hasClassName("open")) { this.removeClassName("open"); //todo: close panel } }); I checked trac and there''s a changeset, #6215 http://dev.rubyonrails.org/changeset/6215 Which seems to detail completely different code for setStyle when the browser is IE. I''m guessing this hasn''t made it into the release version as it hasn''t completed testing or whatever yet. Should I apply the changeset as a patch and see what happens? Gareth --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Just to confirm Line 1921, error invalid argument. And I just upgraded to *1.6.0.2 prototype* and latest *1.8.1 scripty *to see if it was a mismatch. (i was on 1.6.0.0 & 1.8) Still throws the same error. It''s the Effect.Scale that is causing it as I have commented it and the error isn''t thrown. Gareth On Feb 4, 2008 2:10 PM, Gareth Evans <agrath-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Hi Guys > > I''m trying to use Effect.Scale to adjust the width of an element (I have > an absolutely positioned panel I want to slide out on mouse-over). > I''m finding setSyle crashes in IE[7] on the highlighted line. > > setStyle: function(element, styles) { > element = $(element); > var elementStyle = element.style, match; > if (Object.isString(styles)) { > element.style.cssText += '';'' + styles; > return styles.include(''opacity'') ? > element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : > element; > } > for (var property in styles) > if (property == ''opacity'') element.setOpacity(styles[property]); > else > elementStyle[(property == ''float'' || property == ''cssFloat'') ? > (elementStyle.styleFloat === undefined ? ''cssFloat'' : > ''styleFloat'') : > property] = styles[property]; > > return element; > }, > > > My code is below: > > $(''notepanel'').observe(''mouseover'',function(e){ > if(!this.timer) > { > this.timer = window.setTimeout(function(){ > this.timer = undefined; > this.hide(); > new Effect.Appear(this, { duration:.5 }); > new Effect.Scale(this, { scaleX:true, scaleY:false, > scaleContent:false, scaleMode: { originalHeight:500, originalWidth:500 }}); > this.addClassName("open"); > }.bind(this),500); > } > }).observe(''mouseout'',function(e) { > if(this.timer) > { > window.clearTimeout(this.timer); > this.timer = undefined; > } > if(this.hasClassName("open")) > { > this.removeClassName("open"); > //todo: close panel > } > }); > > > I checked trac and there''s a changeset, #6215 > http://dev.rubyonrails.org/changeset/6215 > Which seems to detail completely different code for setStyle when the > browser is IE. > > I''m guessing this hasn''t made it into the release version as it hasn''t > completed testing or whatever yet. > Should I apply the changeset as a patch and see what happens? > > Gareth > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Please ignore me. I forgot to specify percentage for scale, but regardless, i''m using morph now with better results. Gareth On Feb 4, 2008 2:25 PM, Gareth Evans <agrath-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Just to confirm > Line 1921, error invalid argument. > > And I just upgraded to *1.6.0.2 prototype* and latest *1.8.1 scripty *to > see if it was a mismatch. (i was on 1.6.0.0 & 1.8) > Still throws the same error. > > It''s the Effect.Scale that is causing it as I have commented it and the > error isn''t thrown. > > Gareth > > > On Feb 4, 2008 2:10 PM, Gareth Evans <agrath-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > Hi Guys > > > > I''m trying to use Effect.Scale to adjust the width of an element (I have > > an absolutely positioned panel I want to slide out on mouse-over). > > I''m finding setSyle crashes in IE[7] on the highlighted line. > > > > setStyle: function(element, styles) { > > element = $(element); > > var elementStyle = element.style, match; > > if (Object.isString(styles)) { > > element.style.cssText += '';'' + styles; > > return styles.include(''opacity'') ? > > element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : > > element; > > } > > for (var property in styles) > > if (property == ''opacity'') element.setOpacity(styles[property]); > > else > > elementStyle[(property == ''float'' || property == ''cssFloat'') ? > > (elementStyle.styleFloat === undefined ? ''cssFloat'' : > > ''styleFloat'') : > > property] = styles[property]; > > > > return element; > > }, > > > > > > My code is below: > > > > $(''notepanel'').observe(''mouseover'',function(e){ > > if(!this.timer) > > { > > this.timer = window.setTimeout(function(){ > > this.timer = undefined; > > this.hide(); > > new Effect.Appear(this, { duration:.5 }); > > new Effect.Scale(this, { scaleX:true, scaleY:false, > > scaleContent:false, scaleMode: { originalHeight:500, originalWidth:500 }}); > > this.addClassName("open"); > > }.bind(this),500); > > } > > }).observe(''mouseout'',function(e) { > > if(this.timer) > > { > > window.clearTimeout(this.timer); > > this.timer = undefined; > > } > > if(this.hasClassName("open")) > > { > > this.removeClassName("open"); > > //todo: close panel > > } > > }); > > > > > > I checked trac and there''s a changeset, #6215 > > http://dev.rubyonrails.org/changeset/6215 > > Which seems to detail completely different code for setStyle when the > > browser is IE. > > > > I''m guessing this hasn''t made it into the release version as it hasn''t > > completed testing or whatever yet. > > Should I apply the changeset as a patch and see what happens? > > > > Gareth > > > > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
Just to add onto> > > Which seems to detail completely different code for setStyle when the > > > browser is IE.Yeah that would make sense, an element''s style property is drastically different between the two. On Feb 3, 7:50 pm, "Gareth Evans" <agr...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Please ignore me. > I forgot to specify percentage for scale, but regardless, i''m using morph > now with better results. > > Gareth > > On Feb 4, 2008 2:25 PM, Gareth Evans <agr...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > Just to confirm > > Line 1921, error invalid argument. > > > And I just upgraded to *1.6.0.2 prototype* and latest *1.8.1 scripty *to > > see if it was a mismatch. (i was on 1.6.0.0 & 1.8) > > Still throws the same error. > > > It''s the Effect.Scale that is causing it as I have commented it and the > > error isn''t thrown. > > > Gareth > > > On Feb 4, 2008 2:10 PM, Gareth Evans <agr...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > Hi Guys > > > > I''m trying to use Effect.Scale to adjust the width of an element (I have > > > an absolutely positioned panel I want to slide out on mouse-over). > > > I''m finding setSyle crashes in IE[7] on the highlighted line. > > > > setStyle: function(element, styles) { > > > element = $(element); > > > var elementStyle = element.style, match; > > > if (Object.isString(styles)) { > > > element.style.cssText += '';'' + styles; > > > return styles.include(''opacity'') ? > > > element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : > > > element; > > > } > > > for (var property in styles) > > > if (property == ''opacity'') element.setOpacity(styles[property]); > > > else > > > elementStyle[(property == ''float'' || property == ''cssFloat'') ? > > > (elementStyle.styleFloat === undefined ? ''cssFloat'' : > > > ''styleFloat'') : > > > property] = styles[property]; > > > > return element; > > > }, > > > > My code is below: > > > > $(''notepanel'').observe(''mouseover'',function(e){ > > > if(!this.timer) > > > { > > > this.timer = window.setTimeout(function(){ > > > this.timer = undefined; > > > this.hide(); > > > new Effect.Appear(this, { duration:.5 }); > > > new Effect.Scale(this, { scaleX:true, scaleY:false, > > > scaleContent:false, scaleMode: { originalHeight:500, originalWidth:500 }}); > > > this.addClassName("open"); > > > }.bind(this),500); > > > } > > > }).observe(''mouseout'',function(e) { > > > if(this.timer) > > > { > > > window.clearTimeout(this.timer); > > > this.timer = undefined; > > > } > > > if(this.hasClassName("open")) > > > { > > > this.removeClassName("open"); > > > //todo: close panel > > > } > > > }); > > > > I checked trac and there''s a changeset, #6215 > > >http://dev.rubyonrails.org/changeset/6215 > > > Which seems to detail completely different code for setStyle when the > > > browser is IE. > > > > I''m guessing this hasn''t made it into the release version as it hasn''t > > > completed testing or whatever yet. > > > Should I apply the changeset as a patch and see what happens? > > > > Gareth--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
As I''ve noticed, there is difference over 2 pixels particularly.> Yeah that would make sense, an element''s style property is drastically > different between the two.--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---