Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

diyjoe

macrumors newbie
Original poster
Jan 24, 2005
19
0
I've had problems for a while with Safari sporadically not loading images on some web pages. The problem was so irritating that I ditched it in favour of Camino.

Now Safari 4 is out, I'm trying to move back, but the problem is still there.

It typically happens when viewing a page containing lots of images. Here are two I have recurring problems with:

http://www.blipfoto.com/
http://delicious.com/

A bit of Googling shows I'm not alone, but there doesn't seem to be any proper explanation of the problem or a solution out there. Clearing the cache solves the problem temporarily, but it quickly returns and there's no rhyme or reason to what will or won't load. I've also tried resetting Safari and deleting the prefs file (which I guess do the same thing).

Any ideas / suggestions?
 
Strange - this seems to be an issue which affects many people on many different websites, but there's no solution.
 
maybe one or more of the connections timed out during the process, thus part of the content wasn't retrieved.

Its really common for all browsers when you have questionable internet connections and trying to load large pages with large amount of elements.

Once it finished loading, with or without all images, simple refresh might not solve the problem since currently modern browser mostly only refresh the changed elements. Such that only clear cache MIGHT solve it.

Total Guess.
 
Thanks, Clevin - I have a good connection, the server is very fast at responding and the sites in question all work just fine in all other browsers on the same machine.

Often the problem occurs when you click on one of the images (which has loaded correctly) to follow a link, then use the back button to return to that page, at which point the same image you clicked on doesn't display. No errors are show in Safari's error console and if you access the URL of the image directly it loads just fine. It's like Safari just decides to show a blue '?' icon instead of the image.

Very odd.
 
the sites in question all work just fine in all other browsers on the same machine.

Often the problem occurs when you click on one of the images (which has loaded correctly) to follow a link, then use the back button to return to that page, at which point the same image you clicked on doesn't display.

altho i have seen this question on all browsers, you should still file a bug to apple regarding this issue.

safari's cache reading is a bit different than others. I can feel it, but i don't know exactly how.

UPDATE:
oh, there might be indeed a bug, i can reproduce the thing you described. I did noticed that the position of the pic on the website is dynamically changed each time you load it. maybe its somewhat in conflict with safari's cache mechanism..
 

Attachments

  • Picture 1.png
    Picture 1.png
    244.2 KB · Views: 202
Safari Fix

Hi, I have this problem too. How can I fix it?

I changed the content of the file /System/Library/Frameworks/PubSub.framework/Resourecs/PubSubAgent.app/Conents/Resoureces/Enclosure.html to the following:

<? local enclosure = model
local divclass

local mimeType = escape(enclosure:getMIMEType())
local title = escape(enclosure:getTitle() and enclosure:getTitle() or enclosure:getFilename())
local length = enclosure:getLengthString()
if length == "" then length = " " end
local url = isAllowableURL(enclosure:getURL()) and escape(enclosure:getURL()) or null
local localImageFileURL = enclosure:getURL()
local canOpenInITunes = enclosure:canOpenInITunes()

local enclosureLink
if url then
enclosureLink = "<a href=\"" .. url .. "\">" .. title .. "</a>"
else
enclosureLink = title
end
?>

<div class="apple-rss-enclosure">
<? if localImageFileURL ~= "" then ?> <img src="<?= localImageFileURL ?>" />
<? end ?>
<? if canOpenInITunes then ?> <script language='JavaScript'>
showTunesLink();
</script><? end ?>
<!--- end enclosure -->
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.