I've a simular problem using jQuery in Safari. I'm using the following
code:

$("#photo").css("display","none"); // prevent to fade in the image
before it's fully loadad
$(window).load(function() {
  $("#photo").fadeIn("slow");
});

To prevent flickering in IE (7.0 as well as 6.0 or 5.5) I needed to
add this line in my CSS-document:

#photo {
  display: none;
}

This is working fine in all browsers (FF, IE, Opera,...) but not in
Safari: no image is shown at all.Removing the CSS-line does make it
work in Safari but then the image is flickering in IE (image is shown
for a second; afterwards it hides to show the fade in).

I also tried to replace

  $("#photo").fadeIn("slow");

by

  $("#photo").fadeIn("slow");
  $("#photo").show;

whitout any success for Safari.

Is this a bug, or is there another way to fade in a photo (after it's
fully loaded) in all common browsers (FF, IE, Safari, Opera)?

Thanks in advance,

To

On Oct 5, 10:53 am, bytte <[EMAIL PROTECTED]> wrote:
> Alright. I got it to work by replacing the last fadeIn() of the new
> picture with show().
> The fancy fadeIn animation is gone now, but at least the picture shows
> up in Safari now.
>
> Could this be reported as a jQuery bug? Using the fadeTo command
> doesn't work either. Other animations (have tested some) do work.
>
> On 4 okt, 10:34, bytte <[EMAIL PROTECTED]> wrote:
>
> > I have made a very basic slideshow, with help from this list, that
> > looks for images in a database, then displays them. Here's the 
> > link:http://www.sum.be/project/item.php?item=14&ID=39〈=1 (navigate
> > through the pics by using the small arrows to the right of the
> > picture)
>
> > It works ok in all tested browsers (ff mac/win, ie, opera mac/win),
> > yet not on safari (mac+win).
>
> > As you'll see there's a problem with the fadeIn/fadeOut resulting in a
> > blank space where the picture should reside.
>
> > Here's the code I use to make the old picture fadeOut and the new one
> > fadeIn:
>
> > function showNewPic(json,lang) {
> >      var img = new Image();
> >      img.onload = function(){
> >           $('.jq_loading').hide();
> >           $('.projectpic').fadeOut("fast",function() {
> >                $('.projectpic').attr({ src: "../layout/images/
> > uploads/"+json.picture, id: "jq_" +json.item_ID+ "_" +json.menu_een_ID
> > + "_" +json.menu_twee_ID+ "_" +lang+ "_" +json.ID, alt:
> > json.alt }).fadeIn("fast");
> >           });
> >      }
> >      img.src = "../layout/images/uploads/"+json.picture;
>
> > }
>
> > Any idea why it fails in Safari? The Safari Javascript console gives
> > me no errors whatsoever.
> > (sorry for the double post - topic was here already a week ago, but
> > i'm desperate)

Reply via email to