I'm having problems with global variables.
Considering that I have the following files: init.html, main.html, init.js, main.js and help.js :
Where, init.html:
<HTML>
<HEAD>
<script type=text/javascript src=http://code.jquery.com/jquery-1.6.3.min.js></script>
<script type=text/javascript charset=UTF-8 src=init.js ></script>
<script type=text/javascript charset=UTF-8 src=main.js ></script>
<script type=text/javascript charset=UTF-8 src=help.js ></script>
</HEAD>
<BODY>
<script>
$(document).ready(function() {
test();
});
</script>
</BODY>
</HTML>
In init.js :
function test(){
alert(window.glob);
}
In main.html :
<HTML>
<HEAD>
<script type=text/javascript src=http://code.jquery.com/jquery-1.6.3.min.js> </script>
<script type='text/javascript' >
top.glob = global variable;
</script>
<script type=text/javascript charset=UTF-8 src=help.js ></script>
<script type=text/javascript charset=UTF-8 src=main.js ></script>
</HEAD>
<BODY>
<div id=divtest></div>
<form>
<input type=button value=button onClick=callTest() />
</form>
</BODY>
</HTML>
main.js:
function change(p){
window.glob = p;
$('#divtest').html(<iframe id='IFRAMEtest' width='720' height='400' frameborder='0' src='init.html'></iframe>);
}
And in help.js :
function callTest(){
change('param');
}
When I click in button, displays global variable, but I need to display param.
In short, I need that a .js file read a global variable in another js file where this variable is fed into a function called by an event of a user.
Thanks.
edit - initialized global variable before importing files. js and using top. Works in IE and firefox, but chrome display undefined