两个变量相互依赖的jquery问题
我试图得到一个具有两个变量的jquery函数。 这是一个全新的概念,所以请耐心点:) 变量1从一开始就定义了,可以通过单击特定按钮(.btn--effect2或.btn--effect3)来更改它。 当单击带有class.trigger的按钮时,变量2将html插入DOM 下面是我提出的jquery 到目前为止的工作是: 据console.log告诉我,当点击.btn--effect2(或3)时,变量1会被更新 什么不起作用 不幸的是,对于插入的html中的变量1(变量2),更新似乎没有生效 我发现了一个有趣的问答。我试着修改我的代码,因为我感觉范围有问题。但我想,我不太明白该怎么做,因为它并没有像预期的那样起作用 如果我错过了任何完全不同的解决方案,请向我指出。 非常感谢您的帮助 非常感谢两个变量相互依赖的jquery问题,jquery,variables,Jquery,Variables,我试图得到一个具有两个变量的jquery函数。 这是一个全新的概念,所以请耐心点:) 变量1从一开始就定义了,可以通过单击特定按钮(.btn--effect2或.btn--effect3)来更改它。 当单击带有class.trigger的按钮时,变量2将html插入DOM 下面是我提出的jquery 到目前为止的工作是: 据console.log告诉我,当点击.btn--effect2(或3)时,变量1会被更新 什么不起作用 不幸的是,对于插入的html中的变量1(变量2),更新似乎没有生效 我
var one=“effect1”;
$('.btn--effect2')。单击(函数(){
window.one=“effect2”;
控制台日志(一个);
});
$('.btn--effect3')。单击(函数(){
window.one=“effect3”;
控制台日志(一个);
});
var two=“一些文本。 ”
$('.trigger')。单击(函数(){
$('.list ul li:eq(0)')。在(2)之前;
});代码>
效应1
效应2
效应3
触发
- 一些文本
- 一些文本
- 一些文本
原因是:在您的代码中,two
是在开始时定义的,永远不会更改
这不是动态的
var one=“effect1”;
$('.btn--effect2')。单击(函数(){
window.one=“effect2”;
控制台日志(一个);
});
$('.btn--effect3')。单击(函数(){
window.one=“effect3”;
控制台日志(一个);
});
$('.trigger')。单击(函数(){
var two=“一些文本。 ”
$('.list ul li:eq(0)')。在(2)之前;
});代码>可以包括html
?哇!非常感谢,非常有魅力。那么,如果变量在函数内部,它不会在开始时被调用,而是在调用函数时被调用?我理解正确吗?完全正确。你应该学习JS的作用域,以理解和避免将来出现这种问题。我一定会的。再次感谢@JulianLengfelder在您的问题中,var-two=
语句可能位于顶部,直接位于var-one=“effect1”
下面。通过将其移动到click()
函数中,会有一个实际事件导致two
var更新。否则,到底是什么在更新它,何时更新?回答:什么都没有,从来没有。@gibberish是的,我现在明白了。另一个问题,我是否必须在第一个单击函数的窗口中调用我的变量。一个或者一个本身就足够了?