www.webdeveloper.com
Results 1 to 1 of 1

Thread: Javascript/Flash error

  1. #1
    Join Date
    Nov 2010
    Posts
    4

    Javascript/Flash error

    Hi,
    I'm currently working on a Flash pop-up that can be integrated in several websites. I'm currently testing the code. I've got a flash file with a semi-transparant background that loads over the complete page, it also closes the div with the flash content once the end of the swf is reached.

    The thing is, I want to prevent the user from scrolling whilst the swf is active. That's why I disabled the overflow-Y.

    Now I've got a javascript code that is supposed to change the body's overflow to visible again, and I'm calling to this code in the same frame as where I disable the div with the flash in it.

    But for some reason it isn't working.

    This is my complete Javascript code:

    Code:
    <script type="text/javascript">
    <!-- Original: Gregor (legreg@legreg.de) -->
    <!-- This script and many more are available free online at -->
    <!-- The JavaScript Source!! http://javascript.internet.com -->
    
    var ie4 = (document.all) ? true : false;
    var ns4 = (document.layers) ? true : false;
    var ns6 = (document.getElementById && !document.all) ? true : false;
    
    
    function hidelayer(lay) {
      if (ie4) {document.all[lay].style.visibility = "hidden";}
      if (ns4) {document.layers[lay].visibility = "hide";}
      if (ns6) {document.getElementById([lay]).style.display = "none";}
    }
    
    function writetolayer(lay,txt) {
      if (ie4) {
        document.all[lay].innerHTML = txt;
      }
      if (ns4) {
        document[lay].document.write(txt);
        document[lay].document.close();
      }
      if (ns6) {
        over = document.getElementById([lay]);
        range = document.createRange();
        range.setStartBefore(over);
        domfrag = range.createContextualFragment(txt);
        
         while (over.hasChildNodes()) {
          over.removeChild(over.lastChild);
        }
         over.appendChild(domfrag);
      }
    }
    
    
    <!-- This is the part I added which I thought would show the scrollbar again after the flashpopup is finished -->
    function showbar(){
    	document.getElementsByName('body')[0].style.overflowY = 'visible';
    }
    
    </script>


    And in the final frame of my flash animation I first stop the swf, and then call to both functions:

    //stops the movie
    stop();

    //this is the code that triggers the function to hide the div, and the function that should show the scrollbar

    getURL("javascript:showbar();");
    getURL("javascript:hidelayer('newlayer');");


    I've also got an online webtest here:
    http://www.haragara.com/banner_test/

    And I've included all the files in a zip

    Can anyone tell me what I'm doing wrong?
    Attached Files Attached Files
    Last edited by pafke; 11-16-2010 at 05:37 AM.

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