我想从名为james()
的Javascript文件中加载名为hello.js
的函数,该文件作为外部文件添加到index.html
中。
我的问题是,在$(document).ready(function())
中声明了james函数时,它只是说'james function is undefined'而没有被调用。如何使用onload调用document.ready内部声明的函数?
<html>
<head>
</head>
<body onload= "james()">
<script src=hello.js>
</body>
</html>
hello.js javascript文件
function mountApp{
$(document).ready(function(){
function james(){
alert("how can i get call ,when html page is loaded");
}
});
}
答案 0 :(得分:0)
您的“ james”功能在正确的范围内不存在。它在“就绪”事件侦听器中声明,并且仅存在于侦听器范围内。之后,它将不再可用。
您无法做您想做的事情。函数不能在声明它们的范围之外使用。 而是将函数移到全局范围。
function mountApp{
$(document).ready(function(){
// You can call the function from here
james();
});
}
function james(){
alert("how can i get call ,when html page is loaded");
}
现在,我不明白为什么要在函数内添加事件侦听器“ onready”,因为仅在DOM准备就绪后才执行函数调用,因此它将永远不会触发。
答案 1 :(得分:0)
真正的方法是,在document.ready函数外部创建函数,然后调用
function james()
{
alert("how can i get call ,when html page is loaded");
}
$(document).ready(function(){
james();
)};