Infinite Scroll on iPhone's Safari, slow to load (if at all) I've been rebuilding my site to use Infinite Scroll in several sections. It uses a library called ScrollMagic, so when the user scrolls to the bottom of the page it loads an HTML fragment of the same page but with a query string variable via PHP that tells it where to start. ++++++++++++++ list of top cheapest host http://Listfreetop.pw Top 200 best traffic exchange sites http://Listfreetop.pw/surf list of top gpt sites list of top ptc sites list of top ptp sites list of top crypto currency Wallets sites Listfreetop.pw Listfreetop.pw Listfreetop.pw +++++++++++++++ At the bottom of each fragment, I have an Adsense banner. On my Android phone, this works perfect... the banner shows and I have a little animated circle beneath it for 1-2 seconds, waiting for the next section to load. But I just learned that when I scroll down kind of fast on Safari on iPhone, the user gets to the banner and there's no animated circle or anything to let the user know that there's more to come. Then it just kind of... stays there. For like 30 seconds. I tried scrolling up, and it got halfway between an Adsense banner before it wouldn't scroll up any further. If I scroll down slowly it doesn't do this, only when I scroll down kind of fast. It's not an issue of multiple iterations being on the page and slowing things down, it happens on the first iteration. My only guess is that it's waiting for the banner to completely load before moving on to the next part? If anyone else has experienced this issue, what did you do to fix it? Or can you guys suggest anything I can do on an iPhone to track down the source of the problem? AdSense and infinite scroll don't work well together. The issue being that you can't automatically reload the ads, so if you put the ad on a portion of the page that remains static, it will only be seen once and never reloaded. Alternatively you can insert new ad code each time you insert new content, but then things get tricky. If you insert the new content by using a method that uses document.write(), such as jQuery's $.html(), then each insertion of a new ad block will call for a new ad, including for those already on the page. Thus layering new ads on top of existing ones (not a good look in terms of policy). To avoid this you need to use something a method such as insertAdjacentHTML() [plain vanilla, I don't know what the jQuery equivalent would be]. But simply adding the code in this will do nothing. Bbecause there is no page load event to call js-function that loads the ad. To fix this you need to, for the ad code being inserted, separate the js function calls (