Integralist wrote:
>
> Hi,
>
> I've been struggling with the emilejs animation library for hours now. I've 
> tried contacting the author regarding modifying the library but I've had no 
> response and I'm at my wits end trying to figure out how to do what I need 
> it to do.
>
> The library can be found here: https://github.com/madrobby/emile
>
> I've discovered that the animating of the opacity setting for an element 
> only works for browsers that support it and for Internet Explorer it 
> requires filter:alpha(opacity=0); but I just can't work out how to extend 
> the script to support this?
>
> Any help would be greatly appreciated.
>
>
I've got a generic setOpacity() function which you can use:

function setOpacity(el, val) {
  var w3cVal = val / 100;
  if (el.filters) {
    // avoid IE's bug: normal zoom will force element's
    // hasLayout prop equals -1 (true).
    if (!(el.currentStyle.hasLayout)) { el.style.zoom = 1; }
    el.style.filter = "alpha(opacity=" + val + ")";
  } else {
    el.style.opacity = w3cVal; // W3C browsers.
    //el.style.MozOpacity = w3cVal; // Older Mozilla and Firefox versions.
    //el.style.KHTMLOpacity = w3cVal; // Safari<1.2, Konqueror.
  }
} 

After setting opacity for a text element in IE back to 100, you'll have to 
fix the clearType bug:

// some code
setOpacity(elemTxt, 100);
// Fix IE's clearType bug
if (elemTxt.filters) { elemTxt.style.removeAttribute('filter'); }

Cheers,
Joao Rodrigues (JR)

-- 
To view archived discussions from the original JSMentors Mailman list: 
http://www.mail-archive.com/[email protected]/

To search via a non-Google archive, visit here: 
http://www.mail-archive.com/[email protected]/

To unsubscribe from this group, send email to
[email protected]

Reply via email to