javascript - 我如何使用在 JavaScript 中创建的变量来设置 HTML 中图像的“src”属性?
问题描述
我正在尝试制作一个非常简单的网页,该网页根据用户计算机上的时间全天旋转 3 个预先存在的图像。我已经设法设置了 if 语句,它可以检查一天中的时间并根据一天中的什么时间通过 if 语句执行操作(此功能按预期工作),但是我正在努力做我想做的事情在这个问题的标题中提到了..
下面是我为图像提供的 HTML 代码,它位于脚本标记上方,因此图像在 javascript 执行之前已经创建。
<img id="dayImage" src="" alt="Unable to load image" />
此后,是我拥有的执行此特定功能的内部 javascript:
<script>
var image = document.getElementById('dayImage');
var myDate = new Date();
var hrs = myDate.getHours();
if (hrs < 12)
image.setAttribute("src", "~/Images/Morning.PNG");
else if (hrs >= 12 && hrs <= 17)
image.setAttribute("src", "~/Images/Noon.PNG");
else if (hrs >= 17 && hrs <= 24)
image.setAttribute("src", "~/Images/Evening.PNG");
</script>
如果有任何帮助,我正在 ASP.NET MVC 项目文件中执行此操作。我不确定我是否在这里遗漏了一些非常明显的东西......任何帮助将不胜感激,谢谢:)
解决方案
传递"~/"
给脚本可能是指存储视图的相对路径。使用Url.Content(path)
从 web 根目录开始,将给出服务器中文件的绝对 url。
if (hrs < 12)
image.setAttribute('src', '@Url.Content("~/Images/Morning.PNG")');
else if (hrs >= 12 && hrs <= 17)
image.setAttribute('src', '@Url.Content("~/Images/Noon.PNG")');
else if (hrs >= 17 && hrs <= 24)
image.setAttribute('src', '@Url.Content("~/Images/Evening.PNG")');
编辑:更改为单引号
推荐阅读
- git - git difftool 没有按照 .gitconfig 中的配置工作
- android - 运行时是否可以从私人服务器更新 android 应用程序?
- google-cloud-platform - 如何在不披露信息的情况下命名(谷歌)云项目(ID),但使其适合日常使用?
- python - 如何腌制 QStandardItem 对象
- tensorflow - 如何使用 TensorFlow 将训练模型的数据格式从“NCHW”转换为“NHWC”?
- c - 在 C 中格式化 printf() 字符串时,最小字段宽度有什么意义?
- javascript - 当您按下“确定”(Javascript)时,如何制作一个下载图像的确认框
- java - Java:Do-while 循环,偶数然后再试一次
- google-apps-script - 谷歌应用脚本触发单元格值更改
- svg - 如何修复在 Safari 中不起作用的 SVG 动画