Alastair
Alastair

Reputation: 6114

Embed HTML page within another page inline, *not* with src tag

I have an external page that I want to embed within my page- it has it's own scripts and CSS that I don't want to conflict with mine. Normally I'd just use an <iframe> and be done with it, but this is a mobile optimised site, and I want to avoid extra HTTP calls wherever possible. So, I want to run the request on the server side and embed the resulting HTML within my page, so that the client never has to be make it's own request.

I can do that by doing something like:

<iframe id="test"></iframe>
<script>
    var doc = $("#test")[0].contentWindow.document;
    var $body = $('body',doc);
    $body.html('<h1>Test</h1>');
</script>

But I'd rather do this without using JavaScript at all. Is that possible? Any content I put between the <iframe> and </iframe> tags gets ignored, as it is used for compatibility reasons with browsers that do not support iframes.

Upvotes: 1

Views: 3461

Answers (2)

purgatory101
purgatory101

Reputation: 6770

Eventually you should be able to use the srcdoc attribute on the iframe. But, it currently is not widely supported. In the meantime your only options are javascript or just having the browser make the call with the traditional src attribute. You might look here, as I believe this stackoverflow question is quite relevant.

Upvotes: 1

Niet the Dark Absol
Niet the Dark Absol

Reputation: 324630

Why not just use a <div>? Optionally, set a fixed width and height and add overflow:auto to its CSS.

Upvotes: 2

Related Questions