gpt4 book ai didi

jquery - 全局变量Jquery

转载 作者:行者123 更新时间:2023-12-01 01:36:42 24 4
gpt4 key购买 nike

我以前问过这个问题,但从未真正解决过。

或多或少,我有多个 JS 文件,我需要检查一个变量。我有一个函数可以检查类是否存在,然后更改变量。

var states = function(){

if($('#Animation.switch.switchOff').length == 1){
animationtoggle = 0;
}
else {
animationToggle = 1 ;
}
if($('#Autoscroll.switch.switchOff').length == 1){
scrolltoggle = 1;
}
else {
scrolltoggle = 0
}
return {
animationtoggle: animationtoggle,
scrolltoggle: scrolltoggle
};
}

然后我在另一个 JS 文件中拥有另一个函数:

Okay, I've done this, although It still doesn't fix my problem of being able to use this variable on another file, I have this inside the function: 

$(function() {
var ss = states();
ss.animationtoggle;
var last_position = 0;
var duration = 300;
if (animationtoggle == 1){
//only do something if it's equal to 1 "on"
});

这是切换按钮代码:

$('#optionMenu ul li').click(       
function() {
$(this).toggleClass('switchOff');
var ss = states();
ss.scrolltoggle;
ss.animationtoggle;
});

我处理这个问题的方式正确吗?

请帮忙!这是我的网站,切换按钮目前位于右上角:http://shannonhochkins.v5.cloudsvr.com.au/

最佳答案

我相信您通过多次创建和分配相同的变量来覆盖它们。全局变量应该在特定函数的范围之外定义一次,最好是在页面加载的第一个操作附近定义。全局变量被分配给窗口对象,一旦声明就可以通过名称访问。

//You need to define your global variable out of the scope of your function
var ss = states();

$(function() {
if (ss.animationtoggle == 1){
//only do something if it's equal to 1 "on"
});

$('#optionMenu ul li').click(
function() {
$(this).toggleClass('switchOff');
//Don't create the same variable here with the same name
//Instead access the global variables by using them
// ss.scrolltoggle;
// ss.animationtoggle;
});

关于jquery - 全局变量Jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11944800/

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