我正在尝试将两个函数合并到一个文件中。结果将是加载页面以运行函数并将结果显示在定义的div上。如果有人能告诉我我做错了什么,我将非常感激。
function Calc(){
var a;
var b;
var c;
a=1;
b=2;
c=a+b;
$("#FirstDiv").html(c);
}
function Name(){
var Name;
Name = "George";
$("#SecondDiv").html(Name);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="FirstDiv"></div>
<div id="SecondDiv"></div>
答案 0 :(得分:4)
您需要在页面加载时执行函数,如下所示:
function Calc(){
var a;
var b;
var c;
a=1;
b=2;
c=a+b;
$("#FirstDiv").html(c);
}
function Name(){
var Name;
Name = "George";
$("#SecondDiv").html(Name);
}
Calc();
Name();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="FirstDiv"></div>
<div id="SecondDiv"></div>
&#13;
答案 1 :(得分:1)
如果您正在使用jquery,请使用此功能安全地执行您的两个功能。
<script>
$( document ).ready(function() {
//call your functions here;
});
</script>
答案 2 :(得分:1)
正如其他人告诉你的那样,问题在于你没有调用这些功能。
但是考虑将每个函数转换为IIFE这样就可以防止全局范围污染(即将函数附加到窗口或文档范围)并在解析脚本后立即执行函数。
事情会是这样的:
(function Calc($){
var a;
var b;
var c;
a=1;
b=2;
c=a+b;
$("#FirstDiv").html(c);
})(jQuery)
(function Name($){
var Name;
Name = "George";
$("#SecondDiv").html(Name);
})(jQuery)
此外,如果你将jQuery传递给IIFE,你可以确定$指向jQuery,而不是另一个库或其他什么。
<强>编辑:强>
作为@MisterPositive评论,请确保已经加载了jQuery。所以,是的,将代码包装在$(document).ready(function(){})
内,或者在关闭</body>
标记之前在标题和脚本中添加jQuery脚本标记(另一种方法是确保在执行代码之前加载页面)
希望它有所帮助!