我是一个JavaScript新手,只是做一个小脚本,这样我就可以每隔几天旋转一个图像+链接。我90%肯定我的错误是在代码的底线 - 似乎与引用的方式有关(这让我很困惑)。
正确的代码+解释在哪里以及为什么使用报价将非常感激!
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
today = new Date();
date = today.getDate();
date = date - date%9;
date = date/9;
date = date%3;
arday = new Array("image 1", "image 2", "image 3");
linkday = new Array("link 1", "link 2", "link 3");
document.write("<a href= '" + linkday[date] + target="_blank" ><img src='" + arday[date] "'/> </a>");
// End -->
</SCRIPT>
答案 0 :(得分:3)
您需要在document.write
语句中转义一些引号并添加其他引号:
document.write("<a href='" + linkday[date] + "' target='_blank'><img src='" + arday[date] "' /></a>");
使用变量时,还应使用var
来防止它们自动附加到全局命名空间。在这种情况下,没有明显的差异,但如果上面的代码在函数中,那么 将是一个区别。因此,首选的是以下变量赋值:
var today = new Date();
var date = today.getDate();
date = date - date % 9;
date /= 9;
date %= 3;
var arday = ["image 1", "image 2", "image 3"];
var linkday = ["link 1", "link 2", "link 3"];
顺便说一句,正确使用的标签是
<script type="text/javascript">
language
has been deprecated.但是,HTML5中可以省略type
属性 ,如果这是您正在使用的文档类型。
另外,评论
<!-- Begin
...
// End -->
可以删除,因为它们在现代浏览器中没有用处,并且如果浏览器完全遵循XHTML,会注释掉脚本。
答案 1 :(得分:2)
从正确的字符串开始,然后在
中添加内容<a href="" target="_blank" ><img src=""/></a>
用单引号括起来,因为上面的字符串是使用双引号。
'<a href="" target="_blank" ><img src=""/></a>'
添加第一个变量引用
'<a href="' + linkday[date] + '" target="_blank" ><img src=""/></a>'
添加第二个变量
'<a href="' + linkday[date] + '" target="_blank" ><img src="' + arday[date] + '"/></a>'
将其包装在document.write
中document.write('<a href="' + linkday[date] + '" target="_blank" ><img src="' + arday[date] + '"/></a>');
答案 2 :(得分:2)
language
属性,将其删除。甚至可以省略type
属性。<!-- -->
new Array()
var
var
和一系列变量声明。""
。 <
与标签名称之间不得有空格。<script>
var today = new Date(),
date = today.getDate(),
arday = ["image 1", "image 2", "image 3"],
linkday = ["link 1", "link 2", "link 3"];
date = date - date % 9;
date = date / 9;
date = date % 3;
document.write('<a href="' + linkday[date] + '" target="_blank" ><img src="' + arday[date] + '" / ></a>');
</script>