/    Sign up×
Community /Pin to ProfileBookmark

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 ([email protected]) –>
<!– 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>
[/CODE]

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:
[url]http://www.haragara.com/banner_test/[/url]

And I’ve included all the files in a zip

Can anyone tell me what I’m doing wrong?

[upl-file uuid=16da0408-419f-40ee-a982-99497c440d70 size=17kB]banner_test.zip[/upl-file]

to post a comment
JavaScript

0Be the first to comment 😎

×

Success!

Help @pafke spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 6.16,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @nearjob,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,
)...