0

私は 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>
4

3 に答える 3

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廃止されました。ただし、使用している doctype が HTML5 である場合は、このtype属性を HTML5 で省略できます。

また、コメントは

<!-- Begin
...
// End -->

これらは現代のブラウザーではあまり役に立たないため、削除できます。また、ブラウザーが完全に XHTML に従っている場合は、実際にスクリプトをコメント アウトします

于 2012-05-25T00:11:07.050 に答える
2

正しい文字列から移動して、物事を追加します

<a href="" target="_blank" ><img src=""/></a>

上記の文字列は二重引用符を使用しているため、単一引用符で囲みます。

'<a href="" target="_blank" ><img src=""/></a>'

最初の変数参照を追加します

'<a href="' + linkday[date] + '" target="_blank" ><img src=""/></a>'

2 番目の変数を追加する

'<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>');
于 2012-05-25T00:13:17.373 に答える
2
  • このlanguage属性はブラウザによって無視されるため、削除してください。属性もtype省略できます。
  • このページを XML として解析しない場合は、<!-- -->
  • 代わりに配列リテラルを使用しますnew Array()
  • var変数を宣言するときに使用します
  • コンマを使用して変数宣言を連結します。var1 つと一連の変数宣言に注意してください。
  • 一重引用符は受け入れられますが、HTML では""属性値に二重引用符を使用してください。
  • 二重引用符のエスケープを避けるには、文字列を一重引用符で囲みます。
  • <開き括弧とタグ名の間にスペースがあってはなりません。
  • 属性名、等号、および開始引用符の間にスペースを入れてはなりません。

きれいなコードは次のとおりです。

<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>
于 2012-05-25T00:14:09.150 に答える