I'm looking to put only a small part of a website into an iframe. How would I do this? Usually when I set up a iframe for a website (lets say yahoo) it gets the whole website... Lets say I only wanted a small portion of the website, how would I do this?
Is it possible to put margins on an iframe of a website?
I'm looking to put an iframe of a website on my website. (if that makes sense)
Thanks in advance :D
An
<iframe>
gives you a complete window to work with. The most direct way to do what you want is to have your server give you a complete page that only contains the fragment you want to show.As an alternative, you could just use a simple
<div>
and use the jQueryload
function to load the whole page and pluck out just the section you want:There may be other things you need to do, and a significant difference is that the content will become part of the main page instead of being segregated into a separate window.
You won't be able to manipulate the URL to get only a portion of the page. So what you'll want to do is grab the page contents via the server-side language of your choice and then parse the HTML. From there you can grab the specific DIV you are looking for and then print that out to your screen. You could also use to remove unwanted content.
With PHP you could use
file_get_contents()
to read the file you want to parse and then useDOMDocument
to parse it and grab the DIV you want.Here's the basic idea. This is untested but should point you in the right direction:
In most of the cases the reference is external and you don’t have control over the external page. Thus you’ve to scroll the IFRAME content to the desired position. This of course is impossible. Yeah, there are some JavaScript hacks, but they’re all a bad solution, because the scrolling occurs only after the page is loaded. The Solution
You can wrap the IFRAME into a div and scroll the DIV content using absolute TOP and LEFT CSS properties.
Here’s an example:
Here you have one DIV with dimensions 400x200px. Now by moving the IFRAME within it you can position it on the right place.
<iframe>
loads the full website another way to do is a simple waywhere #content is the content divs id that needs to be shown
This can't be reliably done due to same origin policy and related iframe restrictions.
If it was your website in your website [or a proxy to the target site] then JavaScript in the parent could modify the DOM or CSS of the embedded iframe as desired ..
If the target website is willing to communicate data through another means (including XDR/XHR+CORS), then those could potentially be used as hack-a-bouts as well. However, there is no general solution for this task.
Even
jQuery.load
(which uses XHR) is limited by the same origin policy: