如何设置变量来指导替代类
How do I set a variable to direct alternative classes?
这是对上一个问题的转发。其他问题表述得不够好。我不会删除另一个问题,因为它可能对其他人有用。
大家好,
我有一个javascript/jquery脚本,包含cookie和指导背景图像类的身体标签,通过<body id='body_bg'>
。脚本的一小部分,例如:
$('.somebuttons_class').live('click', function(){
$('#body_bg').removeClass('image10').addClass('image1');
$.cookie('bg_for_the_day', 'image1', { path: '/', expires: 1 });
});
在这段脚本中,用户显示了一个可选的'image10'到'body_bg',但想把它改回'image1'的默认图像。
这个脚本现在在我的'mypage.html'页面的标题部分。我想把它移到一个外部js页面。
问题是:如您所见,我已经按名称调用了主体的默认类'image1'。但是myotherpage.html的默认类是image2,而yetanother.html的默认类是image3。这意味着我必须将整个脚本复制/过去到'myotherpage.html'并将所有'image1's更改为'image2's。这是很多双重代码,但它会起作用。但是,如所示,我的cookie也返回value='image1'。所以这对我的任何其他页面都不起作用!
问题:我如何设置一个变量说'默认',而不是class='image1'或'image2',在我的javascript?如果页面是"mypage.html",我如何输入脚本将"默认"翻译回"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的知识,这感觉就像进入了下一个阶段;)我提前感谢你的帮助。
编辑:得到答案后,我又试了一次。我没把它修好。我决定做一个简单版本的实际脚本,并张贴在这里。如果你有时间,请去看看。
您可以在这里下载测试页。欢迎大家的帮助!
您的代码看起来像这一行:
$.cookie('bg_for_the_day', 'default', { path: '/', expires: 1 });
应该是:
$.cookie('bg_for_the_day', default, { path: '/', expires: 1 });
这样cookie的值就是你的变量(在你的代码中cookie的值总是"default"
- 使用clearInterval方法实现的是将区间变量引用设置为null,而不是
- 如何获取变量's设置元素时的文字值's onclick处理程序
- 为什么ajax回调在我的本地变量中设置undefined
- 如何从HTML元素或Javascript变量中设置idoc变量值
- 在 jquery 表单序列化变量中设置 jquery 延迟
- 流星:变量随机设置为 NaN
- 在变量中设置生成器函数的结果
- PHP 变量在设置值后显示为空
- 如何通过变量动态设置一个国家的颜色
- 我可以创建一个承诺来检查变量是否设置为角度吗?
- JavaScript 变量被设置为 0 令人困惑
- 根据表变量宽度设置 DIV 的宽度
- 如何从变量中设置$scope值$rootScope
- 从变量中设置style.maxWidth
- 检测大型JS程序中的任何变量何时设置为NaN
- 需要帮助:奇怪的JavaScript行为..一个变量在设置另一个变量时发生更改
- Usings传单js从变量中设置位置
- 如何设置Angular配置变量来设置服务器地址
- 在jquery的razor变量中设置值
- 我应该在变量中设置Math.PI吗