www.webdeveloper.com
Results 1 to 12 of 12

Thread: iframe

  1. #1
    Join Date
    Nov 2002
    Posts
    421

    iframe

    if you create an iframe, is there a way to change the src - dynamically change it to a different htm document?

    i have tried the obvious - document.iframeName.src and everything else i can think of.

    i am trying to swap the contents with a button.

  2. #2
    Join Date
    Nov 2002
    Location
    England
    Posts
    275
    I think you need to use the frames array:

    Code:
    HTML:
    <iframe name="iframe1" src="whatever.htm"></iframe>
    
    JS:
    document.frames['frame1'].src = 'whereever.htm';
    I think that's right; going from memory.

  3. #3
    Join Date
    Nov 2002
    Posts
    421
    Rick -

    In your example above i changed the js to:

    document.frames['iframe1'].src = 'whereever.htm';

    to match the names (caught that because it generated an error).

    however, still no luck. seems to do nothing for me (src did not change - but no error generated). i will poke around some more with it. i am not familiar with the frames array.

    any additional thoughts?

  4. #4
    Join Date
    Nov 2002
    Posts
    631
    This might work. The user will have to have JavaScript though.

    Instead of <iframe src="whatever.html"> do:

    <script language="JavaScript" type="text/JavaScript">

    document.write("<iframe src=\"");
    function pageOne() {
    document.write("page1.html");
    }

    function pageTwo() {
    document.write("page2.html");
    }
    document.write("\">");

    </script>
    <body onLoad="pageOne();">
    <input type="button" value="page1.html" onClick="page2.html;">

    I don't know if that will work, but maybe it will. You might to do some tweaking of the code.

  5. #5
    Join Date
    Nov 2002
    Posts
    421
    got it:

    document.iframe1.location.replace("xxx.htm");

    thanks for all the input everyone.

    but i am still curious about the frames array. must do some research.

  6. #6
    Join Date
    Nov 2002
    Location
    England
    Posts
    275
    Heh, I was just about to post this:

    Code:
    document.frames['iframe1'].location.href

  7. #7
    Join Date
    Nov 2002
    Posts
    421
    Rick -

    either what you posted or what i posted works great with IE6. thanks for coming back.

    but on further testing, neither solution works with NS7.

    this cross-browser stuff is going to drive me nuts.

  8. #8
    Join Date
    Nov 2002
    Posts
    631
    Hopefully, someday, all the browsers will be as good as IE.

  9. #9
    Join Date
    Nov 2002
    Location
    England
    Posts
    275
    IE the best, hmm that's a matter of opinion

    To get this to work in NS you probably need to use window.frames instead of document.

  10. #10
    Join Date
    Nov 2002
    Posts
    421
    can't get window. rather than document. to work in NS either.

    but thanks for the idea.

  11. #11
    Join Date
    Nov 2002
    Location
    NY, USA
    Posts
    731
    Using window instead of document worked in both browsers for me ( tested in IE6 and NS7 ).

    document.frames['iframe1'].location.href = 'some-page.html'

  12. #12
    Join Date
    Nov 2002
    Posts
    421
    thanks for coming back at me again. window. is working for me now as well in both browsers. i must have messed something up on my other test.

    thanks to all who pitched in. don't you love a happy ending!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles