Ticket #8022 (closed bug: wontfix)
vml:fill color2 overwritten when using effect show/hide/toggle
| Reported by: | rossi | Owned by: | rossi |
|---|---|---|---|
| Priority: | minor | Milestone: | 1.9.0 |
| Component: | ui.effects.core | Version: | 1.8.16 |
| Keywords: | Cc: | ||
| Blocking: | Blocked by: |
Description
The fill-color in vml elements will be overwritten / set to "white" when using the effect show / hide / toggle at an parent element (e.g. div). When using the "normal" show/hide/toggle from jquery this bug won't appear.
Try this:
$(document)
.ready(function() {
$('<div style="position:absolute; left:100px; top:100px; width:200px; height:100px; background-color:#ffffff;" />')
.appendTo('body') .append('<v:rect id="vmlRect" fillcolor="#0faaf0" style="position:absolute; top:0; left:0; width:50%; height:50%; z-index:9999999;" />') .show('blind', 800)
$('#vmlRect')
.append('<v:fill color="#ff00ff" color2="#00ff00" type="gradient" angle="90" />');
});
or at Fiddle: http://jsfiddle.net/F5WeP/
Change History
comment:1 Changed 9 months ago by scott.gonzalez
- Owner set to rossi
- Status changed from new to pending
comment:2 Changed 9 months ago by rossi
- Status changed from pending to new
If you open fiddel within IE6 you'll see on the lower right widget a rect created by VML. 1st it has two colors from pink to green. But when jq works on this element it only has the 1st color, the 2nd is white. That's what you see at the end.
btw: how can I put a tag (needed for VML in IE) into the header of the html in fiddle..?
comment:3 Changed 9 months ago by scott.gonzalez
- Status changed from new to closed
- Resolution set to wontfix
I'm not sure if you can. If you use jsbin.com, you can see exactly what's going to be used and it'll be obvious. jQuery doesn't support VML, so I'm going to close this as wontfix, but if you have a small fix for this, we can consider landing it.


I'm not really sure what I'm looking at here. The fiddle doesn't seem to do anything. Also, you're using jsFiddle incorrectly and creating a page inside a page.