gpt4 book ai didi

javascript 函数在 jquery $(document).ready block 中不起作用

转载 作者:搜寻专家 更新时间:2023-11-01 04:58:22 25 4
gpt4 key购买 nike

我正在尝试从 onclick 触发器调用 JavaScript 函数。

HTML 部分:

<div class="my_radio">
<input type="radio" name="my_radio" value="1" onclick="my_func()"/> first button
</div><!-- end of class my_radio -->

JavaScript 代码

<script type="text/javascript">
$(document).ready(function(){
function my_func(){
alert("this is an alert");
}
});
</script>

它不起作用。

但如果我将 JavaScript 函数保留在 $(document).ready() 代码之外,它就可以工作。以下是相关代码片段:

<script type="text/javascript">
$(document).ready(function(){
function my_func111(){
alert("this is an alert");
}
});

function my_func(){
alert("this is an alert");
}
</script>

1) 为什么第一个 JavaScript 代码片段不起作用?

2) 如何让第一个 JavaScript 代码片段正常工作?

编辑:

据我所知,$(document).ready() 在网页完全加载时执行。那么,如果我在 $(document).ready( )

最佳答案

这都是关于 javascript 执行上下文和范围的。

您在函数中定义的所有内容都只在该函数中知道。

在您的第一个测试中,函数 my_func() 只能在就绪回调中使用(以及在内部其他对象中)。你不能在外面引用它。

在您的第二个示例中,函数 my_func() 对文档是全局的,可以从任何地方访问。

我知道这可能是一个非常简单的解释:-)

关于javascript 函数在 jquery $(document).ready block 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8288046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com