gpt4 book ai didi

javascript - 如何设置变量来直接替代类?

转载 作者:行者123 更新时间:2023-11-28 10:14:49 24 4
gpt4 key购买 nike

这是a previous question的转发。其他问题表述得不够好。我不会删除其他问题,因为它可能对其他人有用。

大家好,
我有一个 javascript/jquery 脚本,包含 cookie 并定向背景图像类body 标签,来自 <body id='body_bg'> 。该脚本的一小部分例如:

$('.somebuttons_class').live('click', function(){
$('#body_bg').removeClass('image10').addClass('image1');
$.cookie('bg_for_the_day', 'image1', { path: '/', expires: 1 });
});

在这段脚本中,用户正在向“body_bg”显示可选的“image10”,但希望将其更改回“image1”的默认图像。
该脚本现在位于我的“mypage.html”页面。我想将其移至外部 js 页面。

问题是:如您所见,我已将主体的默认类称为“image1”。但“myotherpage.html”的默认类是“image2”,“yetanother.html”的默认类是“image3”。这意味着我必须将整个脚本复制/粘贴到“myotherpage.html”并将所有“image1”更改为“image2”。这是很多重复代码,但它会起作用。然而,如图所示,我的 cookie 也返回 value='image1' 。所以这对我的任何其他页面都不起作用!

问题:如何在我的 JavaScript 中设置一个变量“default”,而不是 class='image1' 或 'image2'?如果页面是“mypage.html”,如何输入脚本将“default”翻译回“image1”,但如果页面是“myotherpage.html”,则使用“image2”?
只是为了让您了解我的意思:

var currentPage =  window.location.pathname;
var default;
if(currentPage == "mypage.html"){
default = "image1";
}
if(currentPage == "myotherpage.html"){
default = "image2";
}

那么前面的脚本将如下所示:

$('.somebuttons_class').live('click', function(){
$('#body_bg').removeClass('image10').addClass('default');
$.cookie('bg_for_the_day', 'default', { path: '/', expires: 1 });
});

我现在已经了解了很多关于 javascript 的知识,这感觉就像进入了一个新的水平;) 我提前感谢您的帮助。

编辑:得到答案后我再次尝试。我没有让它发挥作用。我决定制作一个实际脚本的简化版本并将其发布在这里。如果您有空闲时间,请检查一下。
您可以download the testpage here 。欢迎任何帮助!

最佳答案

除了这一行之外,您的代码看起来还不错:

 $.cookie('bg_for_the_day', 'default', { path: '/', expires: 1 });

应该是:

 $.cookie('bg_for_the_day', default, { path: '/', expires: 1 });

这样 cookie 的值就是您的变量(在您的代码中,cookie 的值始终是“默认”

关于javascript - 如何设置变量来直接替代类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6806406/

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