季节性图片更改工具(MVC和JavaScript)

时间:2018-09-19 17:44:50

标签: javascript html asp.net-mvc image

我正在尝试在我的MVC应用程序中实现一个功能,该功能使用JavaScript根据一年中的月份更改主徽标。

我正在Layout.cshtml视图中设置图像,如下所示:

<img id="logo" src="~/Images/Logos/default.png" alt="Logo" style="max-width: 300px" />

我的JavaScript:

$(document).ready(function () {

    var d = new Date();
    var Month = d.getMonth() + 1;
    var img = document.getElementById("logo");
    var src;

    switch (Month) {
        default:
            src = "Images/Logos/default.png";   // Set Default Logo
            break;
        case 12:
            src = "Images/Logos/Christmas.png";   // Christmas
            break;
        case 11:
            src = "Images/Logos/Thankgiving.png";   // Thanksgiving
            break;
        case 10:
            src = "Images/Logos/Halloween.png";   // Halloween
            break;
        case 7:
            src = "Images/Logos/Fourth.png";   // Fourth of July
            break;
        case 2:
            src = "Images/Logos/Valentines.png";   // Valentines Day
            break;
        case 1:
            src = "Images/Logos/NewYear.png";   // New Years
            break;
    }

    img.src = src;
});

它在一定程度上起作用。它将更改我的“仪表盘”视图上的图像,这是应用程序在启动时打开的位置(以防万一),但是,它会使所有其他视图上的图像看起来好像不存在。

希望有人遇到了同样的问题,或者有人可以告诉我我的JS是否有问题。

谢谢!

2 个答案:

答案 0 :(得分:0)

您确定src路径正确吗?您的.html中有一个“〜”,而脚本中没有。但是,我习惯将“默认”情况移动到开关底部。不知道是否可以解决问题。

答案 1 :(得分:0)

我意识到自己写的路径不正确。

正确的路径:

$(document).ready(function () {

var d = new Date();
var Month = d.getMonth() + 1;
var img = document.getElementById("logo");
var src;

switch (Month) {
    default:
        src = "../Images/Logos/default.png";   // Set Default Logo
        break;
    case 12:
        src = "../Images/Logos/Christmas.png";   // Christmas
        break;
    case 11:
        src = "../Images/Logos/Thanksgiving.png";   // Thanksgiving
        break;
    case 10:
        src = "../Images/Logos/Halloween.png";   // Halloween
        break;
    case 7:
        src = "../Images/Logos/Fourth.png";   // Fourth of July
        break;
    case 2:
        src = "../Images/Logos/Valentines.png";   // Valentines Day
        break;
    case 1:
        src = "../Images/Logos/NewYear.png";   // New Years
        break;
}

img.src = src;

});

感谢所有提供帮助的人!