gpt4 book ai didi

javascript - 如何在使用 jQuery 时使 Javascript 函数为 "defined"?

转载 作者:行者123 更新时间:2023-11-28 18:36:45 24 4
gpt4 key购买 nike

这里发生了很多问题,我找到了一种方法来使它们“经过验证”,但是,这安全吗?如果不行你能帮我改正吗?

$('document').ready(function{
var $demo = $('demo');
$demo.onclick(function runAlpha(){
//do something with alpha
});
$demo.onclick(function runBeta() {
//do something with beta
});
});

function runAlpha(){}
function runBeta(){}

jquery 之外的函数留空为 null,并且 javascript 会识别它的定义。但有没有办法让它更有效呢?如果我在 javascript 部分添加任何内容,是否会导致代码冲突?还是会添加进去?

最佳答案

对你想要做什么有点困惑。编写 jQuery 的常用方法是使用匿名函数,如下所示:

$('document').ready(function{
var $demo = $('demo');
$demo.on("click", function() {
//do something with alpha
});
$demo.on("click", function() {
//do something with beta
});
});

如果你想要命名函数,你可能会这样做:

$('document').ready(function{
var $demo = $('demo');
$demo.on("click", runAlpha);
$demo.on("click", runBeta);
function runAlpha(){
//do something with alpha
}
function runBeta(){
//do something with beta
}
});

听起来您希望能够在 $(document).ready 部分之外调用 runAlpha 或 runBeta 。我通常这样做的方式是:

$('demo').trigger("click");

如果你想直接调用函数,请将函数定义移到闭包之外:

    $('document').ready(function{
var $demo = $('demo');
$demo.on("click", function() {
//do something with alpha
});
$demo.on("click", function() {
//do something with beta
});
});

function runAlpha(){
//do something with alpha
}
function runBeta(){
//do something with beta
}

我个人会采用第一种方式,因为我不喜欢“污染”全局命名空间,但这确实是您的决定。

关于javascript - 如何在使用 jQuery 时使 Javascript 函数为 "defined"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36944640/

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