Then something changed and ads was outsourced to third parties, so instead of images/3.jpg you would have link to external domain, e.g. http://ads.com/3.jpg. Because this way content provider no longer pay for ad bandwidth (it is hosted on other server) they could literally add infinite amount of ads. 8MB jpeg? no problem 3MB javascript? no problem, 4MB animated gif? no problem. This will chew through your data plan very fast so users started blocking ads, the simplest way is block content delivery networks of all ad companies.
Next logical step (for displaying ads) is to move them back to the original domain of content provider. Then you cannot tell which of then images/1.jpg, images/2.jpg or images/3.jpg is ad, unless some human will mark it. This is difficult, prone to errors and abuse and would make ad blockers gigantic.