getDay()jQuery addClass

时间:2014-08-31 12:16:05

标签: javascript jquery

好的,我基本上是尝试使用getDay()和addClass()显示和隐藏内容。

目前似乎并没有为我工作。

我真的很喜欢隐藏和取消隐藏的日子。

提前致谢!

这是我的代码:

<div class="sundayRadio">
                <div class="vertDiv"></div>
                <section class="schedule on_now">
                    <p>20:00 NEWS - DJ RANDOM</p>
                    <p>Description.</p>
                </section>

function applyclass()
{
var d = new Date();
var n = d.getDay();
if (n = 0)
// If day is Sunday
$('sundayRadio').addClass('show');
    $('mondayRadio').addClass('Dshow');
    $('tuesdayRadio').addClass('Dshow');
    $('wednesdayRadio').addClass('Dshow');
    $('thursdayRadio').addClass('Dshow');
    $('fridayRadio').addClass('Dshow');
    $('saturdayRadio').addClass('Dshow');
else if (n = 1)
// If day is Monday
$('sundayRadio').addClass('Dshow');
    $('mondayRadio').addClass('show');
    $('tuesdayRadio').addClass('Dshow');
    $('wednesdayRadio').addClass('Dshow');
    $('thursdayRadio').addClass('Dshow');
    $('fridayRadio').addClass('Dshow');
    $('saturdayRadio').addClass('Dshow');


else
//// Else please reload
$('reloadWarn').addClass('show');
    $('sundayRadio').addClass('Dshow');
    $('mondayRadio').addClass('Dshow');
    $('tuesdayRadio').addClass('Dshow');
    $('wednesdayRadio').addClass('Dshow');
    $('thursdayRadio').addClass('Dshow');
    $('fridayRadio').addClass('Dshow');
    $('saturdayRadio').addClass('Dshow');
}
window.onload = applyclass;

.show { display: block !important; }
.Dshow { display: none !important; }

3 个答案:

答案 0 :(得分:2)

我的代码中出现了以下问题。

1)您正在使用选择器

$('mondayRadio').addClass('show');

使用.获取类似下面的选择器

$('.mondayRadio').addClass('show');

2)您没有在if进行比较

if (n == 0)

而不是

if (n = 0)

我想比较下面以避免这个问题。

if (0 == n)

3)您没有使用{}正确提供阻止if

说像

if(n==0){
 //All your code
}
else if(n==1){
   //code
}
else{
   //code
}

DEMO

答案 1 :(得分:1)

你的班级选择器中缺少点:

错误:

$('sundayRadio')

正确的:

$('.sundayRadio')

并且您没有在if-clauses中进行比较:

错误:

if (n = 0)

正确的:

if (n === 0)

答案 2 :(得分:1)

你的花括号在哪里?

  • JavaScript 中,空格意​​味着很少
  • 如果没有花括号,解释器会尽快结束一个块

例如,

if (false)
    console.log('1');
    console.log('2');

"2"将始终记录到控制台

你需要

if (false) {
    console.log('1');
    console.log('2');
}

预期的行为


此外,由于这样,您的代码几乎肯定会抛出SyntaxError: Unexpected token else,因此在调试时检查控制台可能很有用


最后,正如其他人所指出的那样,n = 1是一项任务,而不是一项比较,而且总是 1; // truthy - 您可能希望使用=== }和类选择器以.开头,就像在 CSS 中一​​样(它的语法相同)。