Well, it seems Safari 5.1 at least on Lion which is what I'm using now decides to unload tabs from memory as it deems it necessary.
The big issue with this is sites that display ajax alerts or ones that have chats as for example GMail. I was having 2 conversations on Google Talk right in the GMail website and while I was on another tab I noticed the title blinking indicating new messages in my conversations, as soon as I clicked the tab Safari decided to completely reload the page, losing all those conversations (I don't keep logs of those).
It goes without saying that this behavior breaks modern web apps and seems unnecessary on a desktop computer. I understand the necessity of this on iOS devices due to ram constrains though.
Is there any way to disable this "feature", I couldn't find a way to do so. It's that or switching to Chrome or Firefox, but I like Safari.
Thanks.
I think I have a temporary work around. Pages on my site — petersonguides.com — periodically reload the tab in Safari 5.1. Ordinarily this wouldn't be a big issue, but I have a video that plays in a FancyZoom box and it can't get all the way through without the tab being refreshed.
I tested with Chrome and it doesn't cause the same tab reload behavior, so I'm sure it's a Safari 5.1 problem.
I have JavaScript and PHP on the home page and I thought there might be a conflict, so I started pulling things off and retesting with the video. The last thing I checked was removing the Google Analytics script. That fixed the problem.
I tried bumping up the Database Storage amount - per the previous answer - but that didn't have any effect.
I am having trouble with Pandora (Flash) not advancing songs in a background tab. As a quick-and-dirty test, I went to Preferences > Advanced > Database storage and popped it up from 5MB to 500MB. Flash is still very unstable, but now songs are advancing in the background. I don't know if this will work for you but you might give it a try.
Safari 5.1 | OS X 10.6.8
The reloading of tabs in the background is a feature of Safari 5.1 on Lion. There is currently no easy way to get around this. The only way possible at the moment involves disabling the multi-process window feature:
Enable Safari's Debug menu by typing in Terminal.app, restarting Safari afterwards:
defaults write com.apple.Safari IncludeInternalDebugMenu 1
From the new Debug menu in Safari, select Use Multi-process Windows to remove the tick before it and deactivate this feature.
While this prevents tab reloading in the background it will disable extensions and gestures in Safari. But it can be easily activated again via the Debug menu.
Related
I updated Safari today to 11.0 and the 'disable cache(s)' menu item (under Develop) is missing. Anyone know the new way to effect this?
As Adam has answered there was information about disable caches added to the release notes, and I've updated my answer accordingly:
For a one-off, you can use ⌥⌘R on the page to reload from origin or ⇧⌘R from Web Inspector.
For a more permanent solution, you can tell Safari to ignore cache when loading resources by opening Web Inspector then going to the Network tab and setting the icon in the top right (it turns blue when active).
After experimentation with the option in the Network tab, it doesn't appear to behave as documented in the release notes:
The setting appears to persist until manually disabled, even when quitting Safari.
Caching appears to be disabled for all pages, not just the inspected one.
Web Inspector didn't always need to be left open.
Resources served from localhost are sometimes still served from the memory cache, even if caching is disabled in the Network tab. Restarting Safari seemed to clear this behaviour.
Safari Technology Preview Release Notes (Release 27)
Browser Changes
Added a “Reload Page From Origin” alternate menu item to the View menu. This action reloads a page without using cached resources.
Removed the Option-Command-R (⌥⌘R) keyboard shortcut from “Enter/Exit Responsive Design Mode” and mapped it to “Reload Page From Origin” instead.
Removed the Disable Caches menu item in the Develop menu. The equivalent functionality is now available through Web Inspector’s Network tab.
Web Inspector
Added “Disable Caches” toggle in the Networking tab that only applies to the inspected page while Web Inspector is open.
Safari 11.1
The appearance of the icon has changed slightly in Safari 11.1:
It looks like (according to the “Safari Technology Preview Release Notes”) that the only way is to open the “Web Inspector” and go the the “Network” tab, and click the small button to ignore the resource cache.
From my testing on Safari 11.0.3, you should restart Safari after toggling "Ignore the resource cache when loading resources".
When using chrome dev tools to emulate mobile devices, sometimes when toggling emulation from mobile back to desktop the user agent spoofing gets stuck in mobile. I've tried hard cache reset, closing browser completely, restore to default.... but anything I do the site still renders in mobile (even when emulation is turned off).
This happens in Canary, beta, and regular Chrome.
Also a note i've only seen this happen in Sharepoint.
Anyone know how to resolve? Nothing seems to get the dev tools to change user agent back to default when exiting emulation.
Have you tried deleting your chrome settings?
Windows: C:/Users/%username%/AppData/Local/Google/Chrome/User Data
Mac OSX: ~/Library/Application Support/Google/Chrome/
Ubuntu: ~/.config/chromium/
Also make sure you aren't ZOOMED! Gets ya everytime
I ran into this same problem previously when using dev tools in Chrome to look at mobile resolutions that got me permanently stuck in mobile for SharePoint only. I solved it originally with the recommendation above of deleting my Chrome settings folder, however, that meant I had to sign in again, sync my extensions, etc.
After forgetting that this would happen again, I ran into the same issue, but this time I discovered that if you append the following to your SharePoint URL it will reset this back to non-mobile. I verified that it is not temporary as I have closed my browser, reopened, visited SharePoint, and it still loads in desktop mode.
/?mobile=0
So, you would use your site url, e.g. https://siteurl/?mobile=0
Weird, this just started happening to me. It persists in new tabs and new windows. Only fix is to open DevTools and switch to Responsive mode and then pull it way out. As soon as I turn off Responsive / Mobile view, Chrome snaps right back to a mobile view by default (appears to be iPad size).
The solution for me (so far) was to quit Chrome and open it back up.
I am Creating an MVC Application using twitter bootstrap 3. Now I need to test the responsive feature in a mobile . I know there is some add on available in Mozilla that allows us to have the same experience as in mobile through desktop, have anyone of you heard of such add on?
You could use the user-agent switcher addon.
However mobile device emulation is one of the point where the Chrome devtools are more feature rich than Firefox/Firebug.
In Chrome, you go to devtools configuration and in the Overrides tab check 'Show emulation view in console drawer'. Then back in devtools click on the show console icon, and finally go to the emulation tab. It let you choose a device, resolution and emulate touch events with the mouse.
Ctrl-Shift-M (Responsive mode) is built into Firefox and will let you work with any size of mobile screen resolution and simulate touch events with the mouse.
There are no presets for specific phones (although you can add new size presets if you want) and you won't be able to spot all differences because you'll always be rendering with Gecko. For increased accuracy you'd have to use a tool that at least emulates different rendering engines. Browserstack can be good for that but in my experience it is tediously slow.
If you are doing user agent detection then an addon to manipulate that might be useful but presumably if you're going for a responsive design you will be more concerned with media query behaviours than hacky user agent tricks.
I'm developing a mobile website for iPhone, Android, etc. using jQuery Mobile. I'd like to be able to test this in my desktop browser and was wondering what the best approach is. I guess I could use a plugin to change the User-Agent header to the appropriate value and manually resize the browser to the device's width, but is there a simpler/more reliable way?
Update
Sorry, I should have mentioned that the only hardware available is a Windows laptop
Well if you have a Mac and xCode is installed you can use the Simulator. Open Mobile Safari and point to you web page on all Apple devices
You can also use the Android Emulator ( But I've not tested that it can access the web from the browser )
Alternatively you could use a plugin ( as you have suggested ).
I personally use Chrome with this plugin:
https://chrome.google.com/webstore/detail/ljfpjnehmoiabkefmnjegmpdddgcdnpo
with pretty good results.
I've used Device Anywhere before
http://www.keynotedeviceanywhere.com/
you access the device through a web portal/site and control it, but this costs $$$
Actual device testing in going to be the most reliable
related:
http://sixrevisions.com/tools/10-excellent-tools-for-testing-your-site-on-mobile-devices/ ( other suggestions )
Difference between iPhone Simulator and Android Emulator
In Chrome hit F12 to open the Developer Toolbar. Then click 'Toggle device toolbar' (tablet icon, top left next to select element). You can then choose the device at the top to test.
There's also PerfectoMobile for testing on devices remotely...though it can be painfully slow. I'd really recommend at least getting some 'base' testing devices, if possible.
There is also http://www.browserstack.com/responsive that can be used to get a screenshot of what your site would look like on a number of given devices.
There is however a limitation of how many screenshots you can get in the free version I have linked to here.
I got nice results, visualy, by using Chrome add-on called Ripple Beta. Bad thing is that there is no ability to add some custom device, like tablets of 8" or 9" or bigger... but works. I'm not sure is it able to show some errors visible on real device but seems nice.
Manymo should work very well simulating Android for you. It shows me exactly what my cell phone shows, even though my desktop browsers don't. Manymo is a website with a lot of Android phones pictured. Just click one and enter your URL. There are options such as Android versions and screen sizes.
Look for the Chrome plugin Responsive Web Design Tester - you'll be able to emulate mobile browsers for different device sizes on all platforms.
When I visit the Spotify Play Button demo page (https://developer.spotify.com/technologies/spotify-play-button/) in Opera 11.62, clicking on the Play Button gives me the (mostly-expected) popup:
The application "Spotify" must be launched to open the link:
spotify:
Do you want to proceed?
If I click yes, the Spotify app then launches (if not already running) and gets focus, but does not play anything. I suspect the link is getting broken by Opera somehow (notice that it has the spotify: protocol name but nothing after that). The Play Button on my own site produces the same behavior. Works fine in Firefox on the same machine.
Has anyone else experienced this?
Yes, sadly, that's the case. There's a similar issue in Opera's bug tracker.
I think your particular issue could be related to Opera's lack of support for cross-origin resource sharing (CORS). CORS support is coming is available in Opera Next, but not Opera 11.62. If it doesn't work in Next, I encourage you to file a bug report.