jquery function声明
<body>
<button onclick="test()">aa</button>
</body>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
$(function() {
function test() {
console.log("aa")
}
})
</script>
报错
test55ss.html:12 Uncaught ReferenceError: test is not defined
at HTMLButtonElement.onclick (test55ss.html:12)
因为$(function(),是html加载完成后才执行,此时的<button onclick="test()">aa</button>,已经生成,但是对应的function test()还没有生成
$(function() {
})
正确写法
<body>
<button onclick="test()">aa</button>
</body>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
function test() {
console.log("aa")
}
</script>
原生js和jquery对比
<body>
<button onclick="test1(this)">test1</button>
<button id="test2" onclick="test2()">test2</button>
</body>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
function test1(obj) {
$(obj).html("aa");
}
function test2() {
$("#test2").html("bb");
}
</script>